mysql 添加自动增量和附加键

发布于 2024-09-02 16:35:34 字数 428 浏览 4 评论 0原文

我正在尝试通过添加新列来更改表,将其设置为自动增量并使用键。

该表已经有一把钥匙,这把钥匙将被添加。我得到的错误如下。

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;

但仍然没有运气。

怎么办呢?

I am trying to alter a table with adding a new column setting it as auto increment and with a key.

The table already has one key and this one will be an addition. The error I get is the following.

error : Multiple primary key defined

My code is:

alter table user add column id int (11) NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;

I have also tries wrapping the key name ie

alter table user add column id int (11) NOT NULL AUTO_INCREMENT PRIMARY (id) KEY FIRST;

But still no luck.

How can it be done ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

蝶舞 2024-09-09 16:35:41

MySQL 不支持非主键的 AUTO_INCRMENT 列。一种选择是将 AUTO_INCRMENT 列设为主键,并且仅对另一个“键”具有唯一约束。

MySQL doesn't support AUTO_INCREMENT columns that aren't the primary key. One option is to make the AUTO_INCREMENT column the primary key, and just have a unique constraint on the other 'key'.

德意的啸 2024-09-09 16:35:39

内森几乎回答了这个问题。

您可以使用 SHOW INDEX FROM mydb.mytable SQL 命令查找现有索引的名称。

您必须首先使用 DROP_INDEX existing_index ON mydb.mytable 删除现有索引。

然后,您更改表并使用代码添加主索引。

最后,使用 CREATE UNIQUE INDEX unique_index ON mydb.mytable (column) 将另一个索引创建为唯一索引。

nathan pretty much answered the question.

You find the name(s) of the existing index(es) by using the SHOW INDEX FROM mydb.mytable SQL command.

You have to drop the existing index first, using DROP_INDEX existing_index ON mydb.mytable.

Then you alter the table and add the primary index with your code.

Finally, you create the other index as a unique index, using CREATE UNIQUE INDEX unique_index ON mydb.mytable (column).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文