[英]Unable to truncate table mysql
我的架构中有几个表在截断时遇到问题。 我的结构是:
country
->PK countryId
->name
city
->PK cityId
->FK countryId
->name
address
->PK addressId
->FK cityId
customer
->PK customerId
->FK addressId
appointment
->PK appointmentId
->FK customerId
现在我不是制作此表的人,它不是提供给我的,也不是SQL方面的任何专家,实际上不是初学者,但是我需要能够截断数据,因为它是用于测试应用程序的,我具有不再需要的模拟数据。
这是我得到的错误:
TRUNCATE TABLE country Error Code: 1701. Cannot truncate a table referenced in a foreign key constraint (`U05FKQ`.`city`, CONSTRAINT `city_ibfk_1` FOREIGN KEY (`countryId`) REFERENCES `U05FKQ`.`country` (`countryId`)) 0.547 sec
我也尝试运行此:
TRUNCATE TABLE appointment;
TRUNCATE TABLE customer;
TRUNCATE TABLE address;
TRUNCATE TABLE city;
TRUNCATE TABLE country;
它在约会截断上成功,但在客户上失败,并且不会继续。
在对应用程序中的数据进行一次删除时,我注意到的另一个大问题是自动递增的ID无法调整。 即使删除了3个条目的整个表,即使我在表中只有一个条目之后也删除了整个表,IE也不会删除它,但仍显示4的ID,IE是否可以解决此问题?
我无权访问原始数据库创建脚本。
一个非常不安全的数据解决方案是:
SET FOREIGN_KEY_CHECKS=0;
然后,将其设置为:
SET FOREIGN_KEY_CHECKS=1;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.