约束

约束

  • 概念: 对表中的数据进行限定, 保证数据的正确性, 有效性 和 完整性
  • 分类:
    1. 主键约束 -> PRIMARAY KEY
    2. 非空约束 -> NOT NULL
    3. 唯一约束 -> UNIQUE
    4. 外键约束 -> FOREIGN KEY

1.非空约束

  • 值不能为null
  1. 创建表时添加约束
    • ~~字段名~~ ~~字段类型~~ NOT NULL;
  2. 修改约束
    • ALTER ... MODIFY ....

2.唯一约束

  • 值不能重复
  1. 创建添加
    • ~~字段名~~ ~~字段类型~~ UNIQUE;
  2. 修改约束
    • 删除 -> ALTER TABLE ~~表名~~ DROP INDEX ~~字段名~~;
    • 添加 -> ALTER ... MODIFY ....
  3. 注意: MySQL中,唯一约束限定的值可以有多个NULL

3.主键约束

  • 非空且唯一
  • 一张表只有一个字段为主键(唯一标识)
  1. 创建添加
    • ~~字段名~~ ~~字段类型~~ PRIMARY KEY;
  2. 修改
    • 删除 -> ALTER TABLE ~~表名~~ DROP PRIMARY KEY;
    • 添加 ->ALTER ... MODIFY ....
  3. 自动增长 - AUTO_INCREMENT
    • 如果某一列是数值类型, 使用 AUTO_INCREMENT 完成值的自动增长
    1. 创建添加 -> ~~字段名~~ ~~字段类型~~ PRIMARY KEY AUTO_INCREMENT;
    2. 删除 -> ALTER ... MODIFY ....;
    3. 添加 -> ALTER ... MODIFY .... AUTO_INCREMENT;

4.外键约束

  • 外键可以为NULL
  1. 创建添加 -> CONSTRAINT ~~外键名称~~ FOREIGN KEY (~~外键列名~~) REFERENCES ~~主表名称~~(~~主表列名~~);
  2. 修改
    • 删除 -> ALTER TABLE ~~表名~~ DROP FOREIGN KEY ~~外键名~~;
    • 添加 -> ALTER TABEL ~~表名~~ ADD CONSTRAINT ~~外键名~~ FOREIGN KEY (~~外键列名~~) REFERENCES ~~主表名称~~(~~主表列名~~);
  3. 级联操作
    • 添加 -> CONSTRAINT ~~外键名称~~ FOREIGN KEY (~~外键列名~~) REFERENCES ~~主表名称~~(~~主表列名~~) 级联更新 / 级联删除;
    • 级联更新 -> ON UPDATE CASCADE;
    • 级联删除 -> ON DELETE CASCADE;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值