我正在使用 redbean ORM 使用 mysql 和 codeigniter。在为多对多关联实现外键后,运行时出现以下错误:
drop TABLE IF EXISTS `temp`
Integrity constraint violation: 1217 Cannot delete or update a parent row: a foreign key constraint fails thrown
然后我将 SHOW ENGINE INNODB STATUS 输入到 phpmyadmin。输出包括:
LATEST FOREIGN KEY ERROR------------------------: Cannot drop table `db1`.`temp`because it is referenced by `db1`.`temp_workers`.
换句话说,另一个表引用了 FK。出于测试目的,我认为最好的做法是删除所有关联的表并使用我正在测试的控制器重新创建它们。这是最好的方法吗?我试过了:
drop TABLE IF EXISTS `temp` `temp_workers`
,但我仍然收到上述错误,并且 drop 命令不起作用。还:
truncate TABLE `temp`, `temp_workers`
给出:
You have an error in your SQL syntax