主键忘记添加自增,添加自增后报错

【 TiDB 使用环境】生产环境
【 TiDB 版本】
【遇到的问题】
有个表,忘记设置主键自增,后面再次设置提示:8200 - Unsupported modify column: can’t set auto_increment
下面是alter sql
ALTER TABLE usercenter.full_user
MODIFY COLUMN id int(11) NOT NULL AUTO_INCREMENT FIRST;

感觉得重建这个表了。

试试清空数据后再添加主键

4 个赞

需要重建表,不支持对存量表通过 ALTER TABLE MODIFY 的方式追加 AUTO_INCREMENT 属性列。但是,支持通过 ALTER TABLE MODIFY 移除 AUTO_INCREMENT 属性列,前提是需要将SESSION 变量 @@tidb_allow_remove_auto_inc 设置为1。

1 个赞

新建表,把数据复制过来再改名:smile:

1 个赞

主键自增属性需要在建表的时候指定。

你现在可以使用rename 改名表,然后新建表,在insert into select 进新表。

此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。