ALTER TABLE `table` ADD `unionid` VARCHAR( 255 ) NOT NULL
然后设置唯一索引
ALTER TABLE `table` ADD UNIQUE (
`unionid`
)
提示
请问这是为什么呢?
PHP中文网2017-04-17 15:34:49
第一句SQL:你為table
表格增加了unionid
列,且是非空字串,所以初始值是空字串''
;
第二句SQL:你給table
表的unionid
列建立唯一約束,但唯一約束的前提是unionid
列的值不重複,然而unionid
列的所有值都是空字符串''
,所以會報Duplicate entry '' for key 'unionid'
。
解決方法:先把unionid
的值修正為不重複後再給該列新增唯一限制。