我在JDBC MySQL数据库中有一个表,其中有一个具有唯一字符串字段的记录,该字符串是一个URL。每个URL都需要有一个由该精确URL命名的表。
问题:有些URL包含超过64个字符,超过了表标识符(MySQL参考)的最大长度。URL包含不允许的字符。
我该怎么处理呢?我的想法是找到或创建某种编码器,它将遵循局限性,充当双注入功能。有什么想法吗?
发布于 2014-10-19 15:02:55
将表命名为URL是一个可怕的想法。您不仅会遇到最大名称长度问题,而且还会遇到编码问题和转义问题。
更好的方法是生成自动名称(table1、table2等),并有一个索引表,将URL映射到为其创建的表
发布于 2014-10-19 15:00:56
每个URL一张桌子?不,那太傻了。
您应该有一个带有URL的表,另一个与它有1:多关系的表。你的想法是不可扩展的。
我建议您不要使用URL作为主键。
更好的方法是从数据库自动生成密钥和URL列的唯一约束。现在,如果您愿意,您的URL可以是一个CLOB。不应该以这种方式与任何长度限制发生冲突。
https://stackoverflow.com/questions/26451792
复制相似问题