mysql,alter column删除主键和auto_increment

标签 mysql sql mysql-error-1075

我正在将我的 mysql 数据库表从 id (auto) 更改为 uid。

ALTER TABLE companies DROP PRIMARY KEY;
ALTER TABLE companies ADD PRIMARY KEY (`uuid`);

这是我得到的错误..

[SQL] ALTER TABLE companies DROP PRIMARY KEY;
[Err] 1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key

据我所知,我需要将 id 更改为非自动增量,因为我将其作为主键删除。?更改列以删除主键并自动递增的语法是什么?

ALTER TABLE companies change id id ?????????? int(11)

最佳答案

如果您需要在单个 SQL 语句中从 id 列中删除自动增量和主键,应该这样做:

ALTER TABLE companies DROP PRIMARY KEY, CHANGE id id int(11);

事实上,您应该能够在单个 ALTER TABLE 查询中完成所有操作:

ALTER TABLE companies
DROP PRIMARY KEY,
CHANGE id id int(11),
ADD PRIMARY KEY (uuid);

关于mysql,alter column删除主键和auto_increment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3090442/

相关文章:

mysql - 简单的 perl mysql 查询不起作用

sql - 在 SQL Server 2008 中只存储月份和年份?

mysql - 自增Id和key问题(MySQL)

mysql - 如何通过distinct实现group by

php - MySQL - 如何在更复杂的查询中替换 ORDER BY?

php - IN() 函数不使用百分号返回结果

mysql - 在单独的列中计算多个条件 - MySQL

mysql - 自动递增列

mysql - 删除 MySQL 中的主键

mysql - 使用 VBA(excel) 在 excel 中未显示正确的结果 - 连接到 mysql