Bob*_*obo 16 mysql auto-increment
我有一个38.000记录的表,但没有任何自动增量列ID.
现在我要添加一个ID列,我想知道会有麻烦吗?
A.B*_*uin 34
只有当您的表与其他人没有关系时,您才可以毫无问题地添加.
您必须删除旧主键并相应地上载表(可能在旧主键上添加唯一索引).
继续这样:
转储数据库
像这样删除主键
ALTER TABLE XXX DROP PRIMARY KEY
Run Code Online (Sandbox Code Playgroud)
ALTER TABLE XXX add column Id INT NOT NULL AUTO_INCREMENT FIRST, ADD primary KEY Id(Id)
Run Code Online (Sandbox Code Playgroud)
将查看该表并更新AutoInc.
Goi*_*pal 21
这将为MySQL表添加一个自动增量ID:
ALTER TABLE `your_table_name` ADD `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST;
Run Code Online (Sandbox Code Playgroud)
根据您桌面上的数据量,可能需要几分钟才能完成.
这是我尝试使用MySQL Workbench的解决方案:
ALTER TABLE `tableName` CHANGE COLUMN `id` `id` INT(11) NOT NULL AUTO_INCREMENT ;
Run Code Online (Sandbox Code Playgroud)
我不知道这是否正确,但我还没有注意到我的Java EE应用程序有任何问题.
Gre*_*mer -3
您对任何字段的定义更改的问题是更改是“破坏性的”。最好将此类更改视为数据迁移。我还没有使用 MySQL 完成此操作,但必须向 SQL Server 添加自动编号。基本思想是一样的。
检查文档,因为 MySQL 可能有一种在不重置字段的情况下添加 aut 增量的机制。如果是这样,通过 SQL 来解决问题。一般来说,我建议不要使用工具以视觉方式进行这些类型的更改,因为大多数工具的方法都具有很大的破坏性。