我有一个已经存在的表,其中一个字段应该是唯一的但不是。我只知道这一点,因为表中的条目与另一个已存在的条目具有相同的值,这导致了问题。如何使此字段仅接受唯一值?
3 回答

Cats萌萌
TA贡献1805条经验 获得超9个赞
ALTER IGNORE TABLE mytbl ADD UNIQUE (columnName);
对于MySQL 5.7.4或更高版本:
ALTER TABLE mytbl ADD UNIQUE (columnName);
从MySQL 5.7.4开始,删除了ALTER TABLE的IGNORE子句,并且它的使用会产生错误。
因此,请确保首先删除重复的条目,因为不再支持IGNORE关键字。

烙印99
TA贡献1829条经验 获得超13个赞
只需在您的数据库phpmyadmin中编写此查询。
ALTER TABLE TableName ADD UNIQUE (FieldName)
例如: ALTER TABLE user ADD UNIQUE (email)

大话西游666
TA贡献1817条经验 获得超14个赞
如果您还想命名约束,请使用以下命令:
ALTER TABLE myTable
ADD CONSTRAINT constraintName
UNIQUE (columnName);
添加回答
举报
0/150
提交
取消