首页 约束
文章
取消

约束

约束1

1 概述

1.1. 概念

约束是作用于表中字段上的规则,用于限制存储在表中的数据

1.2. 目的

保证数据库中数据的正确、有效性和完整性

1.3. 分类

image-20221129120939755

**注意:**

约束是作用于表中的字段上的,可以在创建表/修改表的时候添加约束

2 约束演示

2.1 创建约束

create table user(
    id     int primary key auto_increment comment '主键',
    name   varchar(10) not null unique comment '姓名',
    age    int check ( age > 0 and age <= 120 ) comment '年龄',
    status char(1) default '1' comment '状态',
    gender char(1) comment '性别'
) comment '用户表'

注意:违反 UNIQUE(唯一约束) 条件而导致插入数据失败,会占用一个自增主键id

3 外键约束

3.1. 概念

外键用来让两张表的数据之间建立连接,从而保证数据一致性和完整性

3.2. 语法

  1. 添加外键

    • CREATE TABLE 表名(
          ...
          [ CONSTRAINT ] [外键名称] FOREIGN KEY(外键字段名) REFERENCES 主表(主表列名)
      ) COMMENT '表注释';
      
    • ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY(外键名称) REFERENCES 主表(主表列名);
      
  2. 删除外键

    ALTER TABLE 表名 DROP FOREIGN KEY 外键名称;
    

3.3. 删除/更新 行为

  1. 说明

    image-20221129163243990

  2. 语法

    ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY (外键字段) REFERENCES 主表名(主表字段) ON UPDATE 行为 ON DELETE 行为;
    
本文由作者按照 CC BY 4.0 进行授权

MySQL函数

多表查询