我正在尝试修改一个表,添加一个新的列,并将其设置为自动增量和一个键。
表已经有了一个键,这个键将是一个附加的键。我得到的错误如下所示。
error : Multiple primary key defined我的代码是:
alter table user add column id int (11) NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;我也尝试过包装密钥名( ie
alter table user add column id int (11) NOT NULL AUTO_INCREMENT PRIMARY (id) KEY FIRST;但还是不走运。
怎么做呢?
发布于 2010-05-21 02:57:03
内森几乎回答了这个问题。
您可以使用SHOW INDEX FROM mydb.mytable SQL命令查找现有索引的名称。
您必须首先使用DROP_INDEX existing_index ON mydb.mytable删除现有的索引。
然后修改该表,并在代码中添加主索引。
最后,使用CREATE UNIQUE INDEX unique_index ON mydb.mytable (column)将另一个索引创建为唯一索引。
发布于 2010-05-21 02:21:23
MySQL不支持不是主键的AUTO_INCREMENT列。一种选择是使AUTO_INCREMENT列成为主键,并且对另一个“键”只有一个唯一的约束。
https://stackoverflow.com/questions/2876621
复制相似问题