文档介绍:第7章数据完整性
约束
约束的概念
约束(constraint):是SQL Server提供的自动保证数据库中数据完整性的方法。
约束的种类
主键约束、外键约束、唯一约束、
检查约束、默认约束
约束的应用(一)
主键(primary key)约束
作用:确保主键值的唯一,以保证表 的完整性。
注意:一个表只能有一个主键约束。
主键约束的列值不允许为空值。
主键约束的创建与删除
通过向导创建与删除
利用T_SQL语句创建与删除
创建:
alter table table_name
add constraint constraint_name
primary key [clustered]
(col_name[,…])
删除:
alter table table_name
drop constraint constraint_name
约束的应用(二)
外键(foreign key)约束
作用:与主键约束配合使用,以保证表与表之间的参照完整性。
注意:创建外键约束前要保证已在另一个表中创建了对应的主键约束。
外键约束的列允许为空值。
外键约束的创建与删除
通过向导创建与删除
利用T_SQL语句创建与删除
创建:
alter table table_name
add constraint constraint_name
foreign key (col_name)
references table2_name(col_name)
删除:
alter table table_name
drop constraint constraint_name
约束的应用(三)
唯一(unique)约束
作用:确保表中某列值的唯一性,以保证表的完整性。
注意:一个表只能有一个主键约束,但可以有多个唯一约束。
唯一约束的列值允许有空值,但最多只能有一个。
唯一约束的创建与删除
通过向导创建与删除
利用T_SQL语句创建与删除
创建:
alter table table_name
add constraint constraint_name
unique (col_name[,…])
删除:
alter table table_name
drop constraint constraint_name
约束的应用(四)
检查(check)约束
作用:确保表中某列值在预定的有效范围内,以保证列的完整性。
可以在一个列上定义多个检查约束。
创建检查约束时可以使用逻辑表达式表示数据的有效范围。
检查约束的创建与删除
通过向导创建与删除
利用T_SQL语句创建与删除
创建:
alter table table_name
add constraint constraint_name
check(col_name,check_expr)
删除:
alter table table_name
drop constraint constraint_name