Mysql Can';t更改表格以删除外键导致的自动增量

Mysql Can';t更改表格以删除外键导致的自动增量,mysql,Mysql,我正在尝试从我的MySQL数据库的列\u id中删除Auto\u Increment。但是,当我使用此命令时,列是表的主键 ALTER TABLE Profile MODIFY _id INT PRIMARY KEY NOT NULL 我收到一个错误,告诉我我不能这样做,因为还有其他表引用了主键 因此,我的问题是:有没有办法解决这个问题 1.在进行此更改之前删除关系 2.在进行此更改之前删除其他表格 3.使用诸如更新/级联之类的方法更改关系(表)(不确定这是否有用)最简单、最快的方法如下: s

我正在尝试从我的MySQL数据库的
\u id中删除Auto\u Increment。但是,当我使用此命令时,
是表的
主键

ALTER TABLE Profile
MODIFY _id INT PRIMARY KEY NOT NULL
我收到一个错误,告诉我我不能这样做,因为还有其他表引用了
主键

因此,我的问题是:有没有办法解决这个问题

1.在进行此更改之前删除关系

2.在进行此更改之前删除其他表格


3.使用诸如更新/级联之类的方法更改关系(表)(不确定这是否有用)

最简单、最快的方法如下:

set foreign_key_checks = 0;
alter table Profile change column _id _id INT NOT NULL;
set foreign_key_checks = 1;

找到

从其他表中删除外键,更改您的表并重新创建FORREVIE键。
设置外键检查=0完成后启用它,但主键和自动递增几乎是同义词。为什么要这样做?@Mihai:这是解决这个问题的一个可能方法,我有这个答案吗?有没有一种方法可以在不丢失相关表数据的情况下删除关系?我最终使用了Mihai的解决方案,将外键检查设置为零,然后在插入想要的值后返回到一