当前位置:数据库 > MySQL >>

mysql数据库,我想删除一张表,这张表的主键又作为其它多张表的外键,InnoDB,且设置了删除cascade。

我只想要删除主表,不改变子表的信息。因为可能存在多张子表,而且在我不知道都有哪些子表的情况下,我要删除主表。
答案:这样的操作明显违法了当初如此进行这些表关系设计的初衷。

cascade用处在于,你删除某条记录时,如果主键值被删除,那么级联删除子表的相关数据。

不适用于你现在的情况:删除主表!!!

还是建议你想好,为什么要删除此表。

安全起见的话,先删除各个外键,再删除主表;建议删除主表前,先备份(以免后悔)
其他:好纠结的问题啊。先把外键引用去掉,再删除试试 不能删除,否则会导致数据错误 先把主表的所以外键去掉,然后再删除主表 直接删除该表就行了  drop table_name; 取消关联,在试试看,有关联你删除不了的!!

上一个:mysql 默认支持多大的数据库?我执行1.87G的sql 文件 老报错!
下一个:mysql 数据库操作问题:我再学习语法操作。当我先建立一个外键是,他出现如图所示的错误。

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,