对于emp_id列,最初不存在唯一约束。我想给它添加唯一的约束。对于emp_id,行中的许多内容都包含NULL或空。如果我输入下面的查询,它会显示错误。
alter table users_userprofile add unique(emp_id);
ERROR 1062 (23000): Duplicate entry '' for key 'emp_id'发布于 2019-09-09 20:17:04
对于添加唯一约束的多个NULL,MySQL没有问题。但是,如错误消息所示,不允许使用多个空字符串''。作为一种解决办法,您可以首先更新emp_id列,用NULL替换空字符串
UPDATE users_userprofile
SET emp_id = NULL
WHERE emp_id = '';然后,运行alter语句:
ALTER TABLE users_userprofile ADD UNIQUE(emp_id);https://stackoverflow.com/questions/57853850
复制相似问题