版权声明
- 本文原创作者:清风不渡
- 博客地址:https://blog.csdn.net/WXKKang
一、约束
1、什么是约束?
约束是作用于数据表中列上的规则,用于限制表中数据的类型,约束的存在保证了数据库中数据的精确性和可靠性
约束有列级和表级之分,列级约束作用于单一的列,而表级约束作用于整张数据表
下面我们来列举一下常用的约束:
- NOT NULL 约束:保证列中数据不能有 NULL 值
- DEFAULT 约束:提供该列数据未指定时所采用的默认值
- UNIQUE 约束:保证列中的所有数据各不相同
- 主键约束:唯一标识数据表中的行/记录
- 外键约束:唯一标识其他表中的一条行/记录
- CHECK 约束:此约束保证列中的所有值满足某一条件
- 索引:用于在数据库中快速创建或检索数据
约束可以在创建表时规定(通过 CREATE TABLE 语句),或者在表创建之后规定(通过 ALTER TABLE 语句)
2、创建约束
当使用CREATE TABLE语句创建表时可以指定约束,语法如下:
CREATE TABLE table_name
(
column_name1 data_type (size) constraint_name,
column_name2 data_type (size) constraint_name,
column_name3 data_type (size) constraint_name,
....
);
3、删除约束
我们可以通过在 ALTER TABLE 命令中指定 DROP CONSTRAINT 选项的方法来删除掉现有的约束,例如要去除主键约束的时候可以使用如下命令:
ALTER TABLE table_name DROP CONSTRAINT table_name_PK;
有一些数据库实现允许禁用约束,我们可以临时禁用掉它,过一段时间后再重新启用