MySQL 关闭子表的外键约束检察
准备:
定义一个教师表、一个学生表;在学生表中引用教师表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);
第一步:
插入一个老师
insert into teachers(teacherName) values('NameA');
插入一个学生:
insert into students(studentName,teacherID) values('NameB',100);--可以知道没有这个教师号、所以插入会出错。
不过有没有办法可以插入一条不合理的数据呢?办法还是有的
第二步:
set foreign_key_checks = 0; 这样就可以了。
insert into students(studentName,teacherID) values('NameB',100);
第三步:
设置回默认值、保持外键约束检察。
set foreign_key_checks =1;
总结:
这篇随笔写的特别的乱、我想说的重点就是 set foreign_key_checks =0;时外键约束是没有用的。这时可以对子表进行违反外键约束的插入。
不到万不得以不要用这个。
MySQL 关闭子表的外键约束检察相关推荐
- mysql取消外码约束_MySQL 关闭子表的外键约束检察方法
准备: 定义一个教师表.一个学生表:在学生表中引用教师表ID create table teachers(teacherID int not null auto_increment primary k ...
- mysql给一个表添加外键约束_Mysql添加外键约束
简单说一下使用外键的好处 1.完整性约束 比如: 用户表中有字段 用户编号(id) , 名称(username) 设备表中有字段 设备编号(id) , 设备名称(devicename) 设备属于的用户 ...
- MySQL的多表操作——外键约束、多表联合查询、子查询
目录
- (19)一篇掌握MySQL数据库基础下 基本操作(外键约束、建表原则、多表查询、子查询)
MySQL数据库基础下 一.修改表--添加外键约束 二.多表之间的建表原则 1.建数据库原则:通常情况下,一个项目/应用建一个数据库 2.多表之间的表原则: (1)一对多:分类和商品 (一个分类对应多 ...
- mysql无法添加或更新子行_MYSQL:错误:无法添加或更新子行:外键约束失败
在 Windows操作系统上使用 MySQL,并在尝试在两个表之间创建外键时出错: CREATE TABLE tf_traffic_stats ( domain_name char(100) NOT ...
- mysql sqlstate 23000_SQLSTATE [23000]:违反完整性约束:1452无法添加或更新子行:外键约束失败...
我试图在我的注释表中插入值,但出现错误.俗话说,我不能添加或更新子行,我也不知道这意味着什么.我的架构如下所示: -- -- Baza danych: `koxu1996_test` -- -- -- ...
- MySQL为表添加外键约束
为表添加外键约束的语法 Alter table 表名 add constraint FK_ID foreign key(外键字段名) REFERENCES 外表表名(主键字段名): 为表student ...
- oracle删除库里的所有表,清空mysql指定库里全部表数据-自动删除所有表,有外键约束的表优先删除...
清空mysql指定库里所有表数据-自动删除所有表,有外键约束的表优先删除 由于要清空数据库数据 ,手动非常麻烦.网上找了一下,有一个Oracle的,参照它,在其上修改一下用于Mysql,把代码奉献如下 ...
- mysql给表加外键约束_MySQL为表添加外键约束
为表添加外键约束的语法 Alter table 表名 add constraint FK_ID foreign key(外键字段名) REFERENCES 外表表名(主键字段名): 为表student ...
最新文章
- ffmpeg text relocations
- 【转】每天一个linux命令(38):cal 命令
- boost::integer::mod_inverse用法的测试程序
- Rancher创始人谈Docker,创新愈发困难,未来将何去何从?
- angularjs详解
- 台式电脑一直跳一个计算机页面出来,我的电脑界面上莫名其妙的多出了好几个IE浏览器拜托各位了 3Q...
- 使用tSQLt进行测试驱动的数据仓库开发(TDWD)
- NTP反射放大***分析
- 软考网络工程师--数据通信基础
- windows7系统怎么内录
- TCP/IP协议五:HTTP协议详解
- 高效技巧篇:化繁为简、高效使用金蝶K3WISE(金蝶K3WISE-主控台编辑)
- 怎么把PDF转换成图片?这几种转换方法都可以做到
- python用opencv实现图片的美白磨皮_12 - OpenCV+TensorFlow 入门人工智能图像处理-磨皮美白-多智时代...
- tableau免费版无法更新数据
- Python基础(元祖字典)
- 一文读懂程序化交易算法交易量化投资高频交易统计利
- 十大物联网名词,专业人士才懂全!
- java使用adb连接模拟器截图并把截图文件直接保存到电脑上
- jakarta-taglibs的使用说明