Get 不能截断 Yii 框架中外键约束中引用的表


Getting cannot truncate a table referenced in a foreign key constraint in Yii framework

>我得到无法截断 Yii 框架中外键约束中引用的表

我已经尝试了以下方法,我可以在一些答案中看到,但仍然不起作用

Yii::app()->db->createCommand('set foreign_key_checks=0')->execute();
$this->db->createCommand()->checkIntegrity(false)->execute();
$this->getFixtureManager()->checkIntegrity(false);

我收到如下错误

数据库异常 – yii''db''异常

SQLSTATE[42000]:语法错误或访问冲突:1701 无法截断外键约束中引用的表(yiibasic .educations、约束FK_user外键(user_id(引用yiibasicusers ( id ((正在执行的 SQL 是:TRUNCATE TABLE users

错误信息:阵列
( [0] => 42000
[1] => 1701
[2] => 无法截断外键约束中引用的表
( yiibasic .educations、约束FK_user外键(user_id(引用yiibasicusers ( id (()

任何人都可以帮我纠正它。另外,您能否给出在Yii中播种数据的最佳方法,我无法获得相同的好教程

您必须首先禁用约束: SET foreign_key_checks = 0;

然后截断表格

然后重新激活约束:SET foreign_key_checks = 1;