“禁用外键检查”选项需要澄清

时间:2013-11-27 11:22:16

标签: mysql import foreign-keys

我正在寻找对MySQL docs

声明的一些澄清

我打算导出一个选择了Disable foreign key checks选项的数据库,因为在导入数据库时​​不会导致错误。但是,在阅读完文档之后,我有两个关于导入数据库的问题 -

  1. 导入该数据库后会foreign_key_checks自动设置回1,还是必须手动执行?{/ li>
  2. 导出数据库时已经存在的外键仍然有效吗?
  3. 文档的相关部分如下所示,对我来说并不是特别清楚 -

      

    foreign_key_checks设置为1不会触发现有表格数据的扫描。因此,在foreign_key_checks = 0期间添加到表中的行将不会进行一致性验证。

1 个答案:

答案 0 :(得分:1)

http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html

  1. 一开始就看大表。 foreign_key_checks设置是基于会话的。您不必将自己重置为1。 (虽然没有伤害。)

  2. 是。不会影响实际关系或约束。只有在检查关闭期间检查这些约束。