MySQL数据库:第十三章:常见约束

2023-08-31 14:48:06 浏览数 (1)

回退至Mysql数据库理论与实战

#常见约束

理解:约束是用于限定表的字段的,为了保证数据表的完整性 常见约束:★ (not null)NOT NULL 非空:用于限定某字段为必填项,比如姓名、id等 (default)DEFAULT 默认:用于限定某字段如果没有显式的插入值,默认存储的选项,比如性别、成绩等 (primary key)PRIMARY KEY主键:用于限定某字段是唯一的、非空的,比如学号 (unique)UNIQUE 唯一:用于限定某字段是唯一的,可以为空,比如:座位号 (check)CHECK检查:用于限定某字段必须满足指定条件,比如 check (gender = ‘男’ or gender =‘女’) 但是:mysql不支持 (foreign key)FOREIGN KEY外键:用于限定两个表的关系,比如学员信息表和专业表通过专业编号关联 【面试题】主键和唯一的对比 主键:唯一、非空、一个表至多有一个主键 唯一:唯一、可以为空、一个表可以有多个唯一键

#一、创建表时添加约束 √

分类: 列级约束:直接放在字段的后面,对当前字段有效 not null、default、unique、primary key 表级约束:放在所有字段的下面,对显式指定的字段有效 primary key、unique、foreign key 二者的区别: ①表级约束可以起名,语法: 【constraint 约束名】 约束类型(字段) 其中主键起名后,也无效! ②列级约束不能起名 语法: create table 表名( 字段名 字段类型 约束类型, 字段名 字段类型 约束类型, … 约束 )

#示例1:主键和唯一放在列级约束上

CREATE TABLE grade( id INT PRIMARY KEY, gradename VARCHAR(20) ) CREATE TABLE testTab1( id INT PRIMARY KEY,#主键 tname VARCHAR(20) NOT NULL,#非空 gender CHAR DEFAULT ‘男’,#默认 seat INT UNIQUE NOT NULL,#唯一 非空 gradeId INT , FOREIGN KEY(gradeid) REFERENCES grade(id) );

更多内容请见原文,原文转载自:https://blog.csdn.net/weixin_44519496/article/details/120683880

0 人点赞