MySQL导入数据库--开启/关闭外键约束

今天从服务器上面以SQL文件导出数据库时,发现导入失败,提示insert 语句执行错误,

插入数据时内容有外键关联,无法插入数据。

可以通过设置MySQL的外键约束的方法来进行设置。

   mysql启动和关闭外键约束的方法(FOREIGN_KEY_CHECKS)

  禁用外键约束:  

  SET FOREIGN_KEY_CHECKS=0;  

  启用外键约束:

  SET FOREIGN_KEY_CHECKS=1;  

查看当前外键约束的值:

SELECT  @@FOREIGN_KEY_CHECKS;  

用SQLyog导出数据库时,勾选 【设定 FOREIGN_KEY_CHECKS = 0】

可自动为导出的SQL文件设置取消和开启外键约束

设置关闭外键约束

/*!40014 SET @[email protected]@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;

开启外键约束

/*!40014 SET [email protected]_FOREIGN_KEY_CHECKS */;

  

原文地址:https://www.cnblogs.com/leilong/p/8376277.html

时间: 2024-08-03 19:17:46

MySQL导入数据库--开启/关闭外键约束的相关文章

mysql启动和关闭外键约束的方法

关闭外键约束,输入命令:SET FOREIGN_KEY_CHECKS=0; 启动外键约束,输入命令:SET FOREIGN_KEY_CHECKS=1; 查看当前是否有外键约束:SELECT  @@FOREIGN_KEY_CHECKS;

mysql启动和关闭外键约束的方法(FOREIGN_KEY_CHECKS)

在MySQL中删除一张表或一条数据的时候,出现 [Err] 1451 -Cannot delete or update a parent row: a foreign key constraint fails (...) 这是因为MySQL中设置了foreign key关联,造成无法更新或删除数据.可以通过设置FOREIGN_KEY_CHECKS变量来避免这种情况. 我们可以使用 SET FOREIGN_KEY_CHECKS=0;来禁用外键约束.     然后这块执行我们的插入语句....之后再

Mysql 截断表时由于外键约束无法完成时的处理方法

而在MySQL?5.5中,存在外键约束的InnoDB表,在任何情况下都不允许进行Truncate操作,并报错(Error 1701),如果朋友你实在是有点强迫症,那么可以用下面的方式拐着弯解决: 导出数据库数据位.sql文件. 随便用个文本编辑器打开文件. 手动编辑一下.sql文件,怎样编辑相信你看了下面这个图就知道了 4.再将编辑好的.sql文件重新导入就OK了.

mysql的父子表,外键约束

在MySQL 3.23.44版本后,InnoDB引擎类型的表支持了外键约束.外键的使用条件:1.两个表必须是InnoDB表,MyISAM表暂时不支持外键(据说以后的版本有可能支持,但至少目前不支持):2.外键列必须建立了索引,MySQL 4.1.2以后的版本在建立外键时会自动创建索引,但如果在较早的版本则需要显示建立: 3.外键关系的两个表的列必须是数据类型相似,也就是可以相互转换类型的列,比如int和tinyint可以,而int和char则不可以: 外键的好处:可以使得两张表关联,保证数据的一

mysql关闭/启用外键约束

1.有时为了导入数据方便,需要临时关闭外键约束mysql>SET FOREIGN_KEY_CHECKS=0; 2.打开外键约束mysql>SET FOREIGN_KEY_CHECKS=1; 3.查看FOREIGN_KEY_CHECKS变量mysql>select @@FOREIGN_KEY_CHECKS; =-=-=-=-=Powered by Blogilo

外键约束:foreign key

*外键 foreign key* 1.概念:如果一个实体的(student)的某个字段,指向(引用)另个实体(class)的主键 (class:class_id),就称为student实体的class_id是 外键 . [声名]被指向的实体,称之为主实体(主表),也叫父实体(父表).class 负责指向的实体,称之为从实体(从表),也叫子实体(子表).student 作用:用于约束处于关系内的实体. 比如说:我们去一家很火的餐厅吃饭,去餐厅之前我们是在网上预约了位置的客户,与此同时也刚好来了另外

mysql数据库导入外键约束问题

在网站搬迁过程中,很重要一点是数据的迁移.你的数据库可能已经包含了一个设计良好的数据表集合,并且在网站运营过程中,产生了重要的数据.这时你必须做好包含数据表schema以及数据本身的迁移. 完成上述数据库的迁移,最方便的方法是导出和导入.但是问题是,在导入时,由于数据表本身之间的foreign key外键约束,而导致创建数据无法成功. 临时的解决办法是: mysql> set @@global.foreign_key_checks = 0; 在导入完毕后 mysql> set @@global

mysql设置外键约束开启-关闭

在MySQL中删除一张表或一条数据的时候,出现 [Err] 1451 -Cannot delete or update a parent row: a foreign key constraint fails (...) 这是因为MySQL中设置了foreign key关联,造成无法更新或删除数据.可以通过设置FOREIGN_KEY_CHECKS变量来避免这种情况.   我们可以使用     SET FOREIGN_KEY_CHECKS=0;来禁用外键约束. 之后再用    SET FOREIG

mysql数据库,外键约束和表关系

E-R 图 (实体关系模型) E-R图也称实体-联系图(Entity Relationship Diagram), 提供了表示实体类型.属性和联系的方法,用来描述现实世界的概念模型. 它是描述现实世界关系概念模型的有效方法. 是表示概念关系模型的一种方式. 用"矩形框"表示实体型,矩形框内写明实体名称: 用"椭圆图框"表示实体的属性,并用"实心线段"将其与相应关系的"实体型"连接起来: 用"菱形框"表示实体