【数据库】-【基础篇:约束】

一、约束

1.约束含义

一种限制,用于限制表中的数据,为了保证表中数据的准确性和可靠性。

2.约束格式

添加分类分为列级约束和表级约束。

CREATE TABLE 表名{
	字段名 字段类型 列级约束,
	字段名 字段类型,
	表级约束
}

在创建表或修改表时添加。

3.约束分类

NOT NULL:非空,用于保证该字段的值不能为空。
比如姓名,学号
Null类型特征:
所有的类型的值都可以是null,包括int、 float等数据类型
空字符串””不等于null,0也不等于nul

DEFAULT:默认,用于保证该字段有默认值。
比如性别

PRIMARY KEY:主键,用于保证该字段的值具有唯一性,并且非空。(标识性:代表整行的字段)
比如学号,员工编号
主键约束相当于唯一约束+非空约束的组合,主 键约束列不允许重复,也不允许出现空值。
• 如果是多列组合的主键约束,那么这些列都不允 许为空值,并且组合的值不允许重复。
• 每个表最多只允许一个主键,建立主键约束可以 在列级别创建,也可以在表级别上创建。
• MySQL的主键名总是PRIMARY,当创建主键约束 时,系统默认会在所在的列和列组合上建立对应的 唯一索引。

UNIQUE:唯一,用于保证该字段的值具有唯一性,可以为空。
比如座位号
同一个表可以有多个唯一约束,多个列组合的约束。 在创建唯一约束的时候,如果不给唯一约束名称,就 默认和列名相同。 • MySQL会给唯一约束的列上默认创建一个唯一索引

CHECK:检查约束(mysql不支持,语法支持)

表级约束除了非空、默认,其他都支持。
语法:

constranint 约束名 约束类型(字段名)

在这里插入图片描述

列级约束都支持,但外键约束没有效果。
在这里插入图片描述

主键和唯一的区别

保证唯一性是否允许为空一个表中可以有多少个是否允许组合
主键×至多有一个√,但不推荐
唯一可以有多个√,但不推荐

外键

外键约束是保证一个或两个表之间的参照完整性, 外键是构建于一个表的两个字段或是两个表的两个字 段之间的参照关系。

1.要求在从表设置外键关系;
2.从表的外键列的类型和主表的关联列的类型要求一致或兼容,名称无要求;
3.主表的关联列必须是一个key(一般是主键、唯一);
4.插入数据时,先插入主表,再插入从表;
5.删除数据时,先删除从表,在删除主表;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值