作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我的数据库 (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 的引用。
现在我的问题是
当我导出所有表并再次导入时,它给出了
外键约束失败错误....
因为当我导出 mysql 转储时,sql 转储是在按字母顺序排列的表中生成的并且 tbl_city 在数据库中出现在 tbl_state 之前。
请建议我如何处理这种情况?
有没有办法让所有表都按照外键引用的顺序出现?
最佳答案
您想在转储开始时禁用外键检查,然后在转储所有数据后启用它们:
SET FOREIGN_KEY_CHECKS=0
... dump ...
SET FOREIGN_KEY_CHECKS=1
关于mysql export sql dump alphabatically,导致导入时出现外键约束错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2507839/
我的数据库 (MySQL) 中有 10 个表。其中两个在下面给出 tbl_state state_id |int(10) |UNSIGNED ZEROFILL auto_increment
我是一名优秀的程序员,十分优秀!