mysql导出sql dump alphabatically,导致导入时出现外键约束错误

时间:2010-03-24 13:07:22

标签: mysql foreign-key-relationship dump

我的数据库(MySQL)中有10个表。其中两个在下面给出

tbl_state

state_id    |int(10)  |UNSIGNED ZEROFILL  auto_increment 
state_name  |varchar(40) 

tbl_city

city_id     |int(10)  |UNSIGNED ZEROFILL  auto_increment 
city_name   |varchar(40) |
state_code  |int(10)  | UNSIGNED ZEROFILL (FK reference with tbl_state.state_id)

外键约束: tbl_city.state_code 是对 tbl_state.state_id 的引用。

现在我的问题是

当我导出所有表格并再次导入时,它会给出

foreign key constraint fails error.... 因为当我导出mysql dump时,sql dump是按字母顺序排列的表生成的 tbl_city 位于数据库中的 tbl_state 之前。

请建议我如何处理这种情况?

是否所有表都按外键引用的顺序排列?

2 个答案:

答案 0 :(得分:7)

您希望在转储开始时禁用外键检查,然后在转储所有数据后启用它们:

SET FOREIGN_KEY_CHECKS=0

... dump ...

SET FOREIGN_KEY_CHECKS=1

答案 1 :(得分:0)

如果你使用SQLYog,任何机会。使用此属性。enter image description here