源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

MySQL 关闭子表的外键约束检察方法

  • 时间:2021-09-29 00:10 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:MySQL 关闭子表的外键约束检察方法
[b]准备:[/b] 定义一个教师表、一个学生表;在学生表中引用教师表ID create table teachers(teacherID int not null auto_increment primary key,teacherName varchar(8)); create table students(studentID int not null auto_increment primary key,teacherID int not null,studentName varchar(8), constraint fk_students_teacherID foreign key (teacherId) references teachers(teacherId) on delete no action on update cascade); [b]第一步:[/b] 插入一个老师 insert into teachers(teacherName) values('NameA'); [img]http://files.jb51.net/file_images/article/201703/201703180958572.png[/img] 插入一个学生: insert into students(studentName,teacherID) values('NameB',100);--可以知道没有这个教师号、所以插入会出错。 [img]http://files.jb51.net/file_images/article/201703/201703180958573.png[/img] 不过有没有办法可以插入一条不合理的数据呢?办法还是有的 [b]第二步:[/b] set foreign_key_checks = 0; 这样就可以了。 insert into students(studentName,teacherID) values('NameB',100); [img]http://files.jb51.net/file_images/article/201703/201703180958574.png[/img] [b]第三步:[/b] 设置回默认值、保持外键约束检察。 set foreign_key_checks =1; [b]总结:[/b] 这篇随笔写的特别的乱、我想说的重点就是 set foreign_key_checks =0;时外键约束是没有用的。这时可以对子表进行违反外键约束的插入。 不到万不得以不要用这个。 以上这篇MySQL 关闭子表的外键约束检察方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程素材网。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部