定义:用于限制加入表的数据的类型:
-
NOT NULL 约束: 确保列不能有NULL值。
-
DEFAULT约束: 提供未指定数据时列的默认值。
-
PRIMARY Key(主键) : 唯一标识数据库表中的每一行/记录。
-
FOREIGN Key(外键): 唯一标识任何其他数据库表中的行/记录。
-
CHECK约束: CHECK约束可以确保列中的所有值满足一定的条件。
-
-
当一个表是用CREATE TABLE语句创建,也可以使用ALTER TABLE语句修改表,即使创建约束后,约束也可以再次指定。
-
您所定义的任何约束可以使用带有DROP CONSTRAINT选项的ALTER TABLE命令删除。
ALTER TABLE EMPLOYEES DROP CONSTRAINT EMPLOYEES_PK;
(1)not null
(2)unique(唯一约束):要求该列唯一,每个表可以有多个unique约束
修改某个表时,添加某个约束:
删除约束:
(3)primary key(主键约束):主键必须包含唯一的值,不能包含null值。每个表都应该有一个主键,并且每个表只能有一个主键
primary key修改表-添加/删除约束时与unique相同
(4)foreign key(外键约束):用于预防破坏表之间连接的动作;也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一
修改表:
(5)check约束用于限制列中值的范围:如果对单个列定义 CHECK 约束,那么该列只允许特定的值。
如果对一个表定义 CHECK 约束,那么此约束会在特定的列中对值进行限制
(6)default约束用于向列中插入默认值,如果没有规定其他的值,那么会将默认值添加到所有的新记录。
注意:varchar类型和int类型在default中的写法,分别用‘ ’和()把value值包起来
默认值约束不能直接修改,必须在drop之后在add,drop的时候必须知道当前默认值约束的名称