数据库在有外键约束的情况下,怎么删除数据库中的数据

时间:2024-04-07 13:59:41

相信大家可能会遇到这样一个问题,数据库设置了外键,可还想删除数据库中的某些数据,怎么操作?

现在就教大家一个轻松的办法,不用删除外键就可以删除数据库中的一些数据,关键id还能从1开始,不用默认递增

首先,在数据库中查看外键是否有效(没有设置之前都是有效),命令:[email protected]@foreign_key_checks;

数据库在有外键约束的情况下,怎么删除数据库中的数据,其中,值为1,外键有效,

此时,要想删除数据库中的数据是删不掉的

数据库在有外键约束的情况下,怎么删除数据库中的数据

将外键的值设置为0,此时就是失效状态,命令:set foreign_key_checks = 0,这时就能删除数据了

数据库在有外键约束的情况下,怎么删除数据库中的数据

数据库在有外键约束的情况下,怎么删除数据库中的数据

删除之后,外键再设置为有效:

数据库在有外键约束的情况下,怎么删除数据库中的数据

是不是很简单的几个命令,就能删除有外键约束数据库中的数据

数据是删除了,可要是再添加一条数据,id是从删除的id基础上增加还是就是删除的那个id呢,一起来看一下:

数据库在有外键约束的情况下,怎么删除数据库中的数据

看一下运行结果:

数据库在有外键约束的情况下,怎么删除数据库中的数据

显然,id是递增的,不是删除的12,而是13了

那么,要想id从1开始,下面就分享一下另外一个命令,id可以从1开始:

 

 truncate删除表中的数据, auto_increment记录数将重置,相当于是删掉表在重新建表

数据库在有外键约束的情况下,怎么删除数据库中的数据

插入数据,查看id情况:

数据库在有外键约束的情况下,怎么删除数据库中的数据

 

id从1 开始了~~~

方法虽然是有的,但是在正式操作之前还是要慎重~~,特别是在公司数据面前,自己测试的话,就另说了~~

本文转自:https://blog.csdn.net/master_ning/article/details/80385699