1.首先明确一个概念,假如表A(id,name,foreign_id),表B(foreign_id,name),我们说表A参考了表B的主键作为其外键使用,所以B表示父表,A表是子表
2.删除和更新有四种设置方式
(1)cascade:级联,当父表更新、删除,子表会同步更新和删除
(2)set null:置空,当父表更新、删除的时候,子表会把外键字段变为null,所以这个时候设计表的时候该字段要允许为null,否则会出错
(3)restrict:父表在删除和更新记录的时候,要在子表中检查是否有有关该父表要更新和删除的记录,如果有,则不允许删除个更改
(4)no action:和restrict一样

MySQL外键更新删除设置cascade、set null、restrict、no action的区别相关推荐

  1. 转载:主外键关联删除(on delete set null和on delete cascade)

    本文对mysql也成立.把创建表的数据类型从oracle支持的换成mysql支持的就行了,即: number换成int, varchar2换成varchar. 创建外键后,表的结构为: CREATE ...

  2. mysql外键更新规则_sql server 外键 更新(删除)规则

    以前用数据库,一般都建表关系,但是这些关系建好了往往没有用到. 这次写一个项目,涉及到多表的外键约束和级联删除的问题,才研究了一下. 用的vs2005里面自带的SqlExpress,在VS里面作数据库 ...

  3. MySQL外键约束_ON DELETE CASCADE/ON UPDATE CASCADE

    MySQL通过外键约束实现数据库的参照完整性,外键约束条件可在创建外键时指定,table的存储引擎只能是InnoDB,因为只有这种存储模式才支持外键. 外键约束条件有以下4种: (1)restrict ...

  4. mysql外键无法删除_mysql外键无法删除数据的情况

    最近碰到一次在msyql主从删除数据,居然报错 delete from pt_game_server where id=2; ERROR 1451 (23000): Cannot delete or ...

  5. 主外键关联删除(on delete set null和on delete cascade)

    主外键关联,当删除的是父表数据,参照这些要删除的数据,Oracle有三种处理方式: 1.禁止删除,也是Oracle默认方法. 2.将参照要删除数据的子表对应数据置空. 3.将参照要删除数据的子表对应数 ...

  6. mysql外键约束创建及删除_MySQL中的外键的创建,约束和删除

    一.外键的创建 语法一:后续添加方法 alter table 表名 add constraint 约束名 foreign key(当前表中约束的字段) references 主表表名(要约束的字段名) ...

  7. oracle+cascade=gt;true,mysql数据库主外键级联删除脚本RESTRICT -- CASCADE

    在项目中,我们一般在数据库设计的时候做主外键关联设计,要么就不做.但是这样不符合规范,呵呵. 建立主外键关系的时候,默认是不能级联删除的.而出现往往在删除主表的数据时报错, 需要先删除从表然后再删除主 ...

  8. mysql外键的建立和删除更新

    – 约束 – not null非空,unique唯一 primary key 非空且唯一[主键] – default默认 check保证满足条件 foreign key外键 约束的建立方法如下: cr ...

  9. DBeaver mysql 外键设置了级联删除,子表无法添加数据

    DBeaver mysql 外键设置了级联删除,子表无法添加数据 报错:Cannot add or update a child row: a foreign key constraint fails ...

  10. Mysql外键设置中的CASCADE、NO ACTION、RESTRICT、SET NULL、Set DEFAULT

    CASCADE:父表delete.update的时候,子表会delete.update掉关联记录: SET NULL:父表delete.update的时候,子表会将关联记录的外键字段所在列设为null ...

最新文章

  1. eclipse, Log4j配置(真心的详细~)
  2. 某程序员为方便老婆工作,写了一些小工具给老婆用!如今老婆要离职,公司老板却要求必须把工具留下!网友:跟他收费!...
  3. [Leetcode][第109题][JAVA][有序链表转换二叉搜索树][分治][快慢指针][中序遍历]
  4. makefile之文件搜索(5)
  5. 计算机网络利弊的作文英语作文,网络的弊端英语作文(精选6篇)
  6. shell脚本和linux命令,Linux shell脚本全面学习(一)
  7. javascript实现的自适应宽度的瀑布流
  8. 技巧:删除桌面上提示找不到该项目的文件
  9. 发布一款小软件:和讯博客助手-新闻采集测试版- 0.2.0
  10. mysql 之 增删改查
  11. 每个数据科学家都应该知道的10种机器学习方法
  12. mysql mgr recovering_mysql group replication recovering 怎么调整为 online
  13. unity表情动画与动态捕捉表情
  14. 科学计算自由软件SCILAB
  15. sub( ,amp;) C语言,C语言与C++不同之函数定义
  16. 英语基础知识:定语使用规则下篇
  17. 大数据的“拦路虎”,信息孤岛能否解决?
  18. java如何得到一个窗口_在Java Swing中,如何获得Win32窗口句柄(hwnd)引用到窗口?...
  19. 页面生命周期onShow没有触发
  20. MCAFEE按访问扫描被禁用,卸载MCAFEE方法!

热门文章

  1. 如何导出html中的图片,一键保存网页中的全部图片
  2. excel冻结指定行和列
  3. Microsoft Excel 教程:如何在 Excel 中隐藏或显示行或列?
  4. 编译OpenJDK8并生成CodeQL数据库
  5. 机电一体化柔性生产线加工系统
  6. Gxlcms有声小说系统/小说听书系统源码
  7. 小白笔记LM2596
  8. 深度测评:学习商业数据分析,贪心科技AI到底靠谱么?
  9. flyway(数据库迁移工具)
  10. 虚拟手机一款安卓模拟器,让你手机里拥有另外一台手机