我有主键列,其中有一些外部外键引用。很平常。我忘了为它添加 AUTO_INCREMENT。现在我执行
ALTER TABLE chat.users
更改列 user_id user_id INT(11) NOT NULL AUTO_INCREMENT ;
(PRIMARY KEY 单独定义)
它讲述了一些关于 fk 的信息
ERROR 1833:无法更改列“user_id”:用于表“chat.chats”的外键约束“fk_chats_users”
我不明白为什么 fk 会打扰它的引用 AUTO_INCREMENT。
最佳答案
FK 担心您的更改的原因是因为您试图更改它并用于约束,请记住您可以更改数据类型。
因此,如果您想对 FK 进行更改,请查看 this回答(如果您在生产环境中进行更改,请记住锁定表之前)。
关于mysql - 由于外键,无法在现有列上添加 AUTO_INCREMENT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29280397/