Mysql中外键的 Cascade ,NO ACTION ,Restrict ,SET NULL
外键约束对子表的含义:
外键约束对父表的含义:
在父表上进行update/delete以更新或删除在子表中有一条或多条对应匹配行的候选键时,父表的行为取决于:在定义子表的外键时指定的on update/on delete子句, InnoDB支持5种方式, 分列如下
1 . cascade方式
在父表上update/delete记录时,同步update/delete掉子表的匹配记录
On delete cascade从mysql3.23.50开始可用; on update cascade从mysql4.0.8开始可用
2. set null方式
在父表上update/delete记录时,将子表上匹配记录的列设为null
要注意子表的外键列不能为not null
On delete set null从mysql3.23.50开始可用; on update set null从mysql4.0.8开始可用
3 . No action方式
如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作
这个是ANSI SQL-92标准,从mysql4.0.8开始支持
4. Restrict方式
同no action, 都是立即检查外键约束
5. Set default方式
解析器认识这个action,但Innodb不能识别,不知道是什么意思...
注意:trigger不会受外键cascade行为的影响,即不会解发trigger
转载于:https://www.cnblogs.com/kinwing/p/11102244.html
Mysql中外键的 Cascade ,NO ACTION ,Restrict ,SET NULL相关推荐
- Mysql中外键作用以及Navicat建立外键失败总结
本文摘自参考三篇文章,从这篇文章中将了解到外键作用以及navicat建立外键常见错误解决,帮助读者更加深刻了解外键. 文章目录 一.外键的作用 二. 不设置外键行不行? 三.那到底使不使用外键? 四. ...
- MySQL 中外键与使用详解
外键字段必须先是一个索引,否则将会先创建索引,然后才能创建外键. 如果外键字段为混合键值其中一个,需要为该字段建立单独索引.删除的时候必须先删除外键,才能删除索引. 子表中外键字段数据要么为null, ...
- MySQL中外键的定义、作用、添加和删除
1 简介 在实际开发的项目中,一个健壮数据库中的数据一定有很好的参照完整性.例如学生档案和成绩单两张表,如果成绩单中有张三的成绩,学生档案中张三的档案却被删除了,这样就会产生垃圾数据或者错误数据.为了 ...
- mysql中外键设置级联删除_MySQL中利用外键实现级联删除、更新
MySQL中利用外键实现级联删除.更新 MySQL支持外键的存储引擎只有InnoDB,在创建外键的时候,要求父表必须有对应的索引,子表在创建外键的时候也会自动创建对应的索引.在 创建索引的时候,可以指 ...
- mysql中外键的作用是什么_mysql外键基本功能与用法详解
本文实例讲述了mysql外键基本功能与用法.分享给大家供大家参考,具体如下: 本文内容: 什么是外键 外键的增加 外键的修改和删除 外键的约束模式 首发日期:2018-04-12 什么是外键: 外键就 ...
- 关于mysql中外键关联的一些个人理解
在我看来hibernate最麻烦的一件事就是配置外键关联,稍微不慎就会出现配置错误的情况,现在的项目全部都是在使用mybaits,而mybaits使用就简单的多,起码虽然说是要自己写mysql语句,但 ...
- MySQL中外键定义级展现结果_MySQL高频面试60题含答案
在Java技术面试中,高频常问到的一些MySQL面试题,整理分享给大家,既可用来准备技术面试,也可以作为MySQL知识点梳理.温顾而知新.建议了解.收藏备用. Mysql中有哪几种锁? 1.表级锁:开 ...
- mysql中外键总结_mysql外键的一些总结
外键作用:①可以让数据表不至于太过冗余: ②可以保持数据的一致性(当主表不存在对于的外键时,从表进行的增删操作无效): ③让数据库自动控制插入数据的合法性 外键规则:① 主键和外键数据类型需系统并且为 ...
- mysql 外部键约束名_MySQL中外键的创建、约束以及删除
前言 在MySQL 3.23.44版本后,InnoDB引擎类型的表支持了外键约束. 外键的使用条件: 1.两个表必须是InnoDB表,MyISAM表暂时不支持外键(据说以后的版本有可能支持,但至少目前 ...
最新文章
- 加速mysql导入时间_加快mysql导入导出速度
- 微生物环境因子分析(RDA/db-RDA)-ggvegan包
- mysql 同机做主从
- 代码这样写更优雅(Python版)
- Quick BI助力云上大数据分析---深圳云栖大会
- 汽车之家店铺数据抓取 DotnetSpider实战
- [luoguP2331] [SCOI2005]最大子矩阵(DP)
- wps生成正态分布的随机数_量子计算与机器学习: 量子生成对抗网络QGAN
- mybatisplus项目搭建
- html动态创建table不成功的一个问题
- 数据结构课程设计c语言运动会管理系统
- 音乐播放微信小程序基于node.js后台
- 在php中使用for、while、do-while循环实现从1加到100
- Flash 声音频谱图一
- 基于微信小程序的网上购物系统的设计与实现.pdf
- dwg文件打开的步骤具体是什么
- 学生信息管理系统报告
- linu系统中dhcp的搭建
- gin-vue-admin 使用docker容器中的数据库
- 做程序员,需要学习哪些专业知识?
热门文章
- android内存测试方法,Android内存测试方法.doc
- 【王道操作系统笔记】操作系统的四个特征
- LeetCode 701 二叉搜索树中的插入操作
- Media Player Classic - HC 源代码分析 6:MediaInfo选项卡 (CPPageFileMediaInfo)
- win10查询计算机ip和用户名和密码,Win10系统查询计算机IP子网掩码和默认网关设置教程...
- Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4
- @RequestParam @RequestBody @PathVariable 等参数绑定
- 搭建Sublime Text3 Java编译运行环境
- 2021 年百度之星·程序设计大赛 - 复赛 1001 Palindrome(结论,奇偶性)
- Codeforces比赛规则梳理