Mysql约束

主键

sql语句解释
字段名 字段类型 PRIMARY KEY用于唯一的标示表行的数据,当定义主键约束后,该列不能重复
PRIMARY KEY (字段)在表定义最后指定主键
PRIMARY KEY (字段1,字段2)复合主键
  1. primary key不能重复而且不能为null

  2. 一张表最多只能有一个主键,但可以是复合主键

  3. 使用desc表名,可以看到primary key的情况

  4. 主键的指定方式有两种
    直接在字段名后指定:字段名primakry key
    在表定义最后写primary key(列名);

unique

sql语句解释
字段名 字段类型 unique当定义了唯一约束后,该字段是不能重复的
  1. 如果没有指定not null,则unique字段可以有多个null
  2. 一张表可以有多个unique字段

外键
用于定义主表和从表之间的关系:外键约束要定义在从表上,主表则必须具有主键约束或是unique约束,
当定义外键约束后,要求外键列数据必须在主表的主键列存在或是为null

sql语句解释
FOREIGN KEY (本表字段名) REFERENCES 主表名(主键名或unique字段名)创建外键
  1. 外键指向主表的字段,要求是primary key或者是unique
  2. 表的类型是innodb,这样的表才支持外键
  3. 外键字段的类型要和主键字段的类型一致(长度可以不同)
  4. 外键字段的值,必须在主键字段中出现过,或者为null [前提是外键字段允许为null]
  5. 一旦建立主外键的关系,数据不能随意删除了

check
用于强制行数据必须满足的条件,假定在sal列上定义了check约束,并要求sal列值在1000~2000之间
如果不在1000~2000之间就会提示出错。

sql语句解释
字段名 类型 CHECK (check 条件)创建check

查看约束状态

sql语句解释
desc 表名查看约束状态

约束

在这里插入图片描述

主键

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

unique

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

外键

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

从表如果有一条数据指向主表的主键或unique,那么指向主表的主键或unique那条数据是不能删除的
除非,从表先删除指向某个主表的主键或unique的所有数据,主表才能删除包含主键或unique的数据
在这里插入图片描述

check

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值