MySQL外键设置中的的 Cascade、NO ACTION、Restrict、SET NULL

21 篇文章 0 订阅
订阅专栏

 1 . cascade方式
在父表上update/delete记录时,同步update/delete掉子表的匹配记录 

   2. set null方式
在父表上update/delete记录时,将子表上匹配记录的列设为null
要注意子表的外键列不能为not null  

   3. No action方式
如果子表中有匹配的记录,则不允许对父表对应候选键进行update/delete操作  

   4. Restrict方式
同no action, 都是立即检查外键约束

   5. Set default方式
父表有变更时,子表将外键列设置成一个默认的值 但Innodb不能识别

转载:http://blog.sina.com.cn/s/blog_91339bff0100ymc2.html

   联合主键的作用

联合主键就是用2个或2个以上的字段组成主键。用这个主键包含的字段作为主键,这个组合在数据表中是唯一,且加了主键索引。
可以这么理解,比如,你的订单表里有很多字段,一般情况只要有个订单号bill_no做主键就可以了,但是,现在要求可能会有补充订单,使用相同的订单号,
那么这时单独使用订单号就不可以了,因为会有重复。那么你可以再使用个订单序列号bill_seq来作为区别。把bill_no和bill_seq设成联合主键。即使bill_no相同,bill_seq不同也是可以的。

主键和外键的区别

 

 

分类: SQL
好文要顶 关注我 收藏该文
努力中国
关注 - 9
粉丝 - 13
+加关注
0
0
« 上一篇: springmvc.xml和applicationContext.xml配置的特点
» 下一篇: 在jsp页面如何获得url参数
	</div>
Mysql外键设置CASCADE、NO ACTIONRESTRICTSET NULL
【CSDN】
09-23 788
MYSQL设置外键的时候,删除时和更新时两列有四个值可以选择: CASCADE、NO ACTIONRESTRICTSET NULL,它们的区别如下: CASCADE:父表delete、update的时候,子表会delete、update掉关联记录; SET NULL:父表delete、update的时候,子表会将关联记录的外键字段所在列设为null,所以注意在设计子表时外键不能设为not nullRESTRICT:如果想要删除父表的记录时,而在子表有关联该父表的记录,则不允许删除父.
MySQL - 外键约束的修改更新状态(CASCADERESTRICT,NO ACTIONSET NULL )
LIN的博客
09-13 3747
目录 CASCADE SET NULL  NO ACTION RESTRICT CASCADE 从父表删除或更新对应的行,同时自动的删除或更新连接子表匹配的行。 SET NULL  从父表删除或更新对应的行,同时将子表外键列设为空。 注意,这些在外键列没有被设为NOT NULL时才有效。 ON DELETE SET NULL和ON UPDATE SET SE...
SQL外键约束 - NO ACTION, CASCADE, SET NULL, SET DEFAULT
GengV - 在Java的世界流浪
05-26 3103
NO ACTION指定如果试图删除/修改某一行,而该行的键被其他表的现有行外键所引用,则产生错误并回滚 DELETE/UPDATE语句。CASCADESET NULLSET DEFAULT允许通过删除或更新键值来影响指定具有外键关系的表,这些外键关系可追溯到在其进行修改的表。如果为目标表也定义了级联引用操作,那么指定的级联操作也将应用于删除或更新的那些行。不能为具有
sql外键约束NO ACTION,CASCADE,SET NULL,SET DEFAULT
chongsui7677的博客
06-02 1469
NO ACTION 指定如果试图删除/修改某一行,而该行的键被其他表的现有行外键所引用,则产生错误并回滚 DELETE/UPDATE语句。 CASCADESET NULLSET DEFAULT 允许通过删除或更新键值来影响指定具有外键关系的表,这些外键关系可追溯到在其进行修改的...
sql数据定义语句(cascade,set,null,no action区别
weixin_69884785的博客
05-15 1186
1.首先明确一个概念,假如表A(id,name,foreign_id),表B(foreign_id,name),我们说表A参考了表B的主键作为其外键使用,所以B表示父表,A表是子表。(2)set null:置空,当父表更新、删除的时候,字表会把外键字段变为null,所以这个时候设计表的时候该字段要允许为null,否则会出错。(3)restrict:父表在删除和更新记录的时候,要在子表检查是否有有关该父表要更新和删除的记录,如果有,则不允许删除个更改。●再删除基本表的同时,相关的依赖对象一起删除。
Mysql外键如何使用(CASCADE、NO ACTIONRESTRICTSET NULL)。
程序世界
07-16 4308
Navicat Premium 15建立物理模型的时候,表与表之间的关系都是关联起来,而关联的时候会设置外键。如下图所示: 在删除时或者更新的时有四个选项分别是CASCADE、NO ACTIONRESTRICTSET NULLCASCADE 在父表上update/delete记录时,同步update/delete到子表的匹配记录 SET NULL 在父表上update/delete记录时,将子表上匹配记录的列设为null (要注意子表的外键列不能为not null) NO ACTION 如果子表
mysqlcascade级联,set null,restrict限制 都是什么意思,有何区别.zip
01-17
MySQL数据库,当涉及到表间关系,特别是外键约束时,`CASCADE`, `SET NULL`, 和 `RESTRICT` 是三种常见的操作行为。这些行为定义了如何处理在删除或更新主表(父表)记录时,与之相关联的从表(子表)的记录。...
mysql建立外键
01-20
外键表名>(外键列名) 事件触发限制: on delete和on update , 可设参数cascade(跟随外键改动), restrict(限制外表外键改动),set Null(设空值),set Default(设默认值),[默认]no action 例如: ...
数据库——添加外键约束
热门推荐
心若静#风奈何的博客
09-29 2万+
添加外键约束名字一定不能重复
MySQL—约束:外键约束、语法(添加外键、删除外键)和删除/更新行为(CASCADESET NULL和图形化界面删除/更新)
放下华子我只抽RuiKe5的博客
04-06 8758
约束是作用于表字段上的规则,用于限制存储在表的数据。目的:保证数据库数据的正确、有效性和完整性。分类:注意:约束是作用于表字段上的,可以在创建表/修改表的时候添加约束。外键:用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性。我们来看一个例子:​ 左侧的emp表是员工表,里面存储员工的基本信息,包含员工的ID、姓名、年龄、职位、薪资、入职日期、上级主管ID、部门ID,在员工的信息存储的是部门的ID dept_id,而这个部门的ID是关联的部门表dept的主键id,那。
Mysql数据库 8.SQL语言 外键约束
m0_73983707的博客
11-06 4671
外键约束——将一个列添加外键约束与另一张表的主键(唯一列)进行关联之后,这个外键约束的列添加的数据必须要在关联的主键字段存在创建原则:先创建不含外键的表也就是班级表一般使用第一种,第二种主要用于修改已创建的表为副表,当约束再添加时,也应起名字。 代码实现: 二、外键约束——级联 与其他表进行关联了的数据,不能进行修改和删除操作1.将引用了表字段的学生记录的关联字段修改为NULL;2.在修改班级信息表课程信息的id编号3.在表关联字段设置NULL的记录的数据关联字段重新修改为引用字段
MySQL外键约束
最新发布
ZY_CREATE的博客
03-03 2535
在主表添加的数据,主键 deprno的值包含10、20、30、40和50,由于员工表cmp的外键引用部门表的主键deplto,因此在往员工表emp添加数据时,其deptno字段的值只能是10、20、30、40和50,不能使用其他的值,具体语句如下。因为从表emp的外键列只能插入所引用的列(部门表的deptmo字段)存在的值,所以如果要为两个数据表添加数据,就需要先为主表dept添加数据,插入数据的SQL语句如下。在多对一的表关系,应该将外键添加在“多”的一方,否则会造成数据的冗余。
mysql的ON DELETE CASCADE 和ON DELETE RESTRICT区别
JaneYork的博客
12-12 1172
在这种情况下,如果你试图删除一家公司,但这家公司仍有员工记录存在,MySQL 将拒绝执行删除操作。你需要先处理好员工记录才能成功删除公司记录。​ 是 MySQL 两种不同的外键约束级联操作。它们之间的主要区别在于当主表的记录被删除时,子表相关记录的处理方式。在这种情况下,当你删除一家公司时,与其相关的所有员工记录也会被自动删除。​)表,员工表通过外键关联到公司表。​)表和一个员工(​。
SQL 外键约束
hustyangju的足迹
12-22 1961
如果表A的主关键字是表B的字段,则该字段称为表B的外键,表A称为主表,表B称为从表。外键是用来实现参照完整性的,不同的外键约束方式将可以使两张表紧密的结合起来,特别是修改或者删除的级联操作将使得日常的维护工作更加轻松。 在sqlite,针对 delete和update有以下约束: set null: 父值被删除或者不存在了,则剩余的子值将改为 null set default:父值被
MySQL从小白到高手】第四篇:外键约束详解和表的设计思路
m0_64397675的博客
06-02 1232
目录前言 MySQL的约束~表的设计FOREIGN KEY~简述~:foreign key : 外键约束 (针对两张表,进行了关联~~)语法格式~: 案例背景~:假设有两张表~每个学生都得属于一个具体的班级,这个班级得存在!!!如果学生表这里出现了一个记录,班级classid是10000,此时这样的数据就是非法的~~这种情况下就可以使用外键约束来描述这种关系.学生表依赖了班级表.就把学生表称为"子表",班级表称为"父表".操作案例~:创建外键约束一个基本写法~ 外键约束写在创建表的末尾,描述的是两张表的
mysql数据库教程 外键_数据库教程_mysql外键约束怎么写- 国it教程网
weixin_31184715的博客
02-02 447
mysql外键约束的写法:【[CONSTRAINT ] FOREIGN KEY 字段名 REFERENCES 主键列1】。外键约束是表的一个特殊字段,经常与主键约束一起使用。在 CREATE TABLE 语句,通过 FOREIGN KEY 关键字来指定外键。()具体的语法格式如下:[CONSTRAINT ] FOREIGN KEY 字段名 [,字段名2,…]REFERENCES 主键列1 [...
MySQL外键设置与作用解析
ON DELETE {CASCADE | SET NULL | NO ACTION | RESTRICT} ON UPDATE {CASCADE | SET NULL | NO ACTION | RESTRICT} ``` 这个命令用于向已存在的表添加外键约束。`CONSTRAINT`关键字是可选的,用于定义外键约束的...
写文章

分类专栏

  • mongo 1篇
  • java 24篇
  • python 1篇
  • oracle
  • 博客、markdown 3篇
  • 前端 5篇
  • git 21篇
  • springBoot 13篇
  • postman 1篇
  • 异常处理 7篇
  • 虚拟机的异常处理 2篇
  • 登录验证 1篇
  • linux系统操作 12篇
  • mysql 21篇
  • IDEA 18篇
  • 线程 1篇
  • 后台框架的搭建 11篇
  • 运维 15篇
  • svn 1篇
  • 打印 8篇
  • 单点登录 2篇
  • spring cloud 2篇
  • MyBIS 4篇
  • 测试 6篇
  • 大数据学习 7篇
  • redis 3篇
  • MAVEN 2篇
  • 苹果 2篇
  • 外快 1篇
  • nginx 1篇

最新评论

  • 手把手教你设置局域网访问虚拟机内服务器

    edccc__: 解决了吗 大哥 我的也是

  • org.springframework.web.client.HttpServerErrorException: 500 null

    yixiao120212: 你这个图片有点阴间,看不清

  • java实现多级菜单(递归)

    逸之@: 大赞!

  • redis之CrudRepository使用

    吴zx: 不想写就别写

  • logstash一次同步Mysql多张表到ES深入详解

    m0_60333828: 我这里有400个表 咋弄。。。而且我想把400各表同步到1个索引

大家在看

  • AI 改变世界!一文盘点全球最火爆的 AI 产品
  • 大模型学习路线记录
  • autMan框架对接Slack机器人
  • 练习2:整数翻转(while运用)-举例:123 反转后变成321
  • 超级轻量级别的java web 框架 --Jersey

最新文章

  • mongo慢查询排查
  • redis之CrudRepository使用
  • linux实现共享文件夹功能
2022年6篇
2020年1篇
2019年127篇
2018年126篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家南京玻璃钢酒店人物雕塑大理市玻璃钢雕塑批发宣城玻璃钢雕塑销售江门树脂玻璃钢雕塑工艺江门透光玻璃钢雕塑制作生产玻璃钢花盆福建玻璃钢雕塑哪家便宜河北季节性商场美陈市场价四川节庆商场美陈供货商东升玻璃钢雕塑耐高温玻璃钢花盆厂家直销贵阳铜仁玻璃钢雕塑哪家好深圳超市商场美陈现价玻璃钢马赛克雕塑资兴玻璃钢伟人像雕塑上海玻璃钢雕塑摆件销售企业河南艺术商场美陈研发常州商场美陈布置淄博玻璃钢卡通雕塑厂家安徽玻璃钢雕塑销售厂家玻璃钢雕塑江苏仿铜玻璃钢雕塑定做价格河南彩绘玻璃钢动物雕塑九江公园玻璃钢雕塑玻璃钢雕塑找天天软文推广河南铸造玻璃钢仿铜雕塑制作夜叉雕塑图片玻璃钢佛像德阳校园玻璃钢雕塑安装淮安玻璃钢卡通雕塑价格商场美陈灯具香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化