我想在 MySQL
服务器中创建一个表,其中 mediumtext
列作为 UNIQUE KEY
CREATE TABLE `parts` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` mediumtext NOT NULL,
`display_status` int(11) NOT NULL,
UNIQUE KEY `name` (`name`),
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
但是这犯了一个错误
BLOB/TEXT column 'name' used in key specification without a key length
当我将 `name` 的类型更改为 varchar 时 .. 它有效!
你能告诉我是否可以将文本列设为 UNIQUE KEY
最佳答案
基本上你不能使用 Text
列作为 UNIQUE
键。因为实际上如此大的列不会是唯一的,并且可能有更多重复的机会。因此,请使用 hashing
方法并将该输出用作 UNIQUE 约束。
关于mysql - 将文本列设为唯一键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14033378/