当前位置: 首页 > news >正文

MySQL基础篇 - 约束

01 概述

【1】概念:约束就是作用在表中字段上的规则,用于限制存储在表中的数据。

【2】作用:保证数据库中数据的正确性,有效性和完整性。

【3】分类:

  ① 非空约束not null:用于限制字段的值不能为null

  ② 唯一约束unique:保证字段所有数据都是唯一的

  ③ 主键约束primary key:主键是一行数据的唯一标识,要求非空且唯一

       注意:① 如果插入数据没有成功,但由于已经申请到了主键,所以下一个插入数据的主键值可能与前面不连续。

                  ② MySQL中独有的主键自增:auto_increment

  ④ 默认约束default:保存数据时,如果未指定该字段的值,则采用默认值

  ⑤ 检查约束check:保证字段值满足某一条件,注意(8.0.16版本之后才出现这个约束条件,本电脑的版本用不了)

  ⑥ 外键约束foreign key:用来让两张表的数据之间建立连接,保证数据的一致性和完整性

【说明】:约束是作用在表中字段上的,可以在创建表/修改表的时候添加约束。

【普通约束的格式】:字段名 字段类型 约束条件(ps:约束条件之间不要加逗号) comment 'xx';

02 约束演示

【SQL语句添加约束】:

【图形化界面添加约束】:

03 外键约束

【1】具有外键的表称为子表,与外键相关联的表称为父表。

【2】子表外键里的内容对应着父表的主键内容,如果没有建立外键关联,是无法保证数据的一致性和完整性的,例如:删除父表中的内容,子表中的数据是不会发生变化的;如果是建立了外键关联,则无法去删除父表中的数据。

【3】添加/删除外键的语法:

   ① 关键字:constraint约束,references参考,谈及

04 外键删除更新行为

【1】no action(默认行为):在父表中删除/更新对应记录时,首先检查是否有外键关联,如果有则不允许操作

【2】restrict:同上

【3】caseade:在父表中删除/更新对应记录时,首先检查是否有外键关联,如果有则也删除/更新子表中的记录

【4】set null:在父表中删除/更新对应记录时,首先检查是否有外键关联,如果有则子表中该外键值设为null(外键值一定可以取null值)

【设置外键删除更新行为】:在添加外键的语句后面加上 on update xx on delete xx

【图形化界面设置外键的删除更新行为】: 

 


http://www.mrgr.cn/news/39627.html

相关文章:

  • 基于 Visual Studio C# 的 Hypack 测量成果 RAW 原始数据解算
  • 【ADC】使用全差分放大器驱动 SAR 型 ADC 时的输入输出范围
  • 探索PyUSB:Python与USB设备的桥梁
  • 64.【C语言】再议结构体(下)
  • 编程题 7-13 日K蜡烛图【PAT】
  • Hadoop搭建及Springboot集成
  • Redis缓存穿透解决方案之一:布隆过滤器与计数型布隆过滤器概述以及两者在Spring中的使用
  • 道可云人工智能元宇宙每日资讯|首届天府人工智能大会在成都举办
  • HashMap原理
  • 方法 WebDriverWait
  • 创客匠人第二期“老蒋面对面”交流会圆满收官!
  • 编程题 7-14 求整数段和【PAT】
  • Gromacs pdbtogro and grotopdb问题
  • 微信广告任务平台 ajax_upload 任意文件上传漏洞
  • Linux之实战命令21:stat应用实例(五十五)
  • 麦克风哪个好,领夹麦什么品牌最好,最新领夹麦克风品牌排行榜
  • 企业微信群发工具:精准营销与高效沟通的新篇章
  • EE trade:试金石怎么辨别真假黄金
  • 2024年华为OD机试真题-找终点-Java-OD统一考试(E卷)
  • 中国测绘科学研究院发布:2015/2020中国337城市优于2米分辨率建成区数据(SHP)