我表中的条目由 5-10 个字符长的单词唯一标识,我使用 TINYTEXT(10) 作为列。但是,当我尝试将其设置为 PRIMARY 键时,我得到了size
缺少的错误。
根据我对文档的有限理解,Size
PRIMARY 键可用于简化检测唯一值的方法,即当前几个字符(由 指定Size
)足以认为它是唯一匹配时。在我的情况下,size
从 5 到 10 不同(它们都是 latin1,因此它们是每个字符的精确字节 + 1 的长度)。两个问题:
- 如果我想使用 TINYTEXT 作为 PRIMARY 键,
size
我应该指定哪个?最大可用 - 在这种情况下为 10?或者应该是size
严格的EXACT,例如,如果我的密钥是 6 个字符长的单词,但我将Size
PK 指定为 10 - 它会尝试读取所有 10 个并且会失败并抛出异常? - 使用 [TINY]TEXT 进行 PK 在性能方面有多糟糕?所有的谷歌结果都让我有意见和陈述“这很糟糕,你被解雇了”,但在这种情况下真的是这样吗,考虑到 TINYTEXT 最大为 255 并且我已经将最大长度指定为 10?