尝试删除所有数据并将 AUTOMATIC_INCRMENT 重置为值 0,以便我有一个干净的数据库可以使用。找到一个截断函数,应该允许我执行上述操作,但它会抛出此错误... 无法截断外键约束中引用的表
(`film`.`reviewed`, CONSTRAINT `reviewed_ibfk_1` FOREIGN KEY (`movie_id`) REFERENCES `film`.`films` (`movie_id`))
这是否意味着我必须删除外键?
最佳答案
是的,您不能截断具有外键约束的表
根据docs :-
TRUNCATE TABLE fails for an InnoDB table if there are any FOREIGN KEY constraints from other tables that reference the table. Foreign key constraints between columns of the same table are permitted.
尽管您可以选择这样做:-
SET FOREIGN_KEY_CHECKS=0;
TRUNCATE table1;
SET FOREIGN_KEY_CHECKS=1;
关于MySQL 截断错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19325077/