MySQL删除ok但截断失败

时间:2013-05-06 09:22:56

标签: mysql truncate

我有一个表“学生”表和“评估”表引用“学生”,当我尝试删除任何数据时,没关系,但是当我尝试截断它时,它失败并显示消息:

 ERROR 1701 (42000): Cannot truncate a table referenced in a foreign key constraint (`testdb`.`evaluation`, CONSTRAINT `fk_relationship_18` FOREIGN KEY (`stu_id`) REFERENCES `testdb`.`student` (`id`))

即使学生表是空的,它也显示相同的错误..出现这种情况的原因是什么?或者我应该谷歌如何手动重置自动增量。

1 个答案:

答案 0 :(得分:2)

你不能TRUNCATE对它有FK约束的表(只是因为truncate与delete不同)。

要解决此问题:

  1. 删除约束。
  2. 执行TRUNCATE。
  3. 手动删除现在引用"无处"。
  4. 的行
  5. 创建约束。