当我尝试截断InnoDB表时,我认为会出现外键约束错误。在使用MyISAM时没有遇到这个问题。 是否有一种简单的方法来强制截断所有表?或者我应该编写一个脚本来删除数据库,创建新的数据库然后从头开始创建表格?
关于外键约束,你可以使用以下语句来禁用它们 -SET FOREIGN_KEY_CHECKS = 0; ...DML statements SET FOREIGN_KEY_CHECKS = 1; -- enable checking
如果在操作过程中出现外键问题,您可以采取以下措施: ALTER TABLE tablename DISABLE KEYS 然后进行您的业务,之后使用以下命令重新启用密钥: ALTER TABLE tablename ENABLE KEYS 这种技术在MySQL备份中被使用。
DELETE FROM table
。它不会像外键那样级联删除其他表中找到的每条记录。 - machineaddict