5.2约束 第5章约束 524 CHECK约束 CHECK约束用于限制输入到列中的值的范围, 从而强制数据库中数据的域完整性。它与 FOREIGN KEY约束控制列中数值类似。区别在于它们判断值有 效的方法不同: FOREIGN KEY约束从另一个表中获 和得有效数值列表,而 CHECK约束通过逻辑表达式的 则成立与否加以判断。 定义 CHECK约束的格式为: CONSTRAINT constraint name CHECK[ NOT FOR REPLICATION I (logical_expression
5.2 约束 5.2.4 CHECK约束。 CHECK约束用于限制输入到列中的值的范围, 从而强制数据库中数据的域完整性。它与FOREIGN KEY约束控制列中数值类似。区别在于它们判断值有 效的方法不同:FOREIGN KEY约束从另一个表中获 得有效数值列表,而CHECK约束通过逻辑表达式的 成立与否加以判断。 定义CHECK 约束的格式为: CONSTRAINT constraint_name CHECK [ NOT FOR REPLICATION ] ( logical_expression ) 第 5 章 约 束 、 默 认 和 规 则 < >
5.2约束 【例5-3】为专业情况表( Speciality)中的专业代码 时( Speciality D列创建一个 CHECK约束,将专业代码 约限定为五位,其中第一位只能是“a”“”或“A” “Z”,其它位为“0”-“9”,使用其它符号将被认为是 默无效的 利 uSE Educational-选择当前数据库 则 GO 定义 CHECK约束 ALTER TABLE Speciality ADD CONSTRAINT Chk Speciality CHECK ( SpecialityID LIKE'(A-Z10-9110-9110-9102L'o0
5.2 约束 【例5-3】 为专业情况表(Speciality)中的专业代码 (SpecialityID)列创建一个CHECK约束,将专业代码 限定为五位,其中第一位只能是“a”-“z”或“A”- “Z” ,其它位为“0”-“9” ,使用其它符号将被认为是 无效的。 USE Educational -- 选择当前数据库 GO -- 定义CHECK约束 ALTER TABLE Speciality ADD CONSTRAINT Chk_SpecialityID CHECK ( SpecialityID LIKE '[A-Z][0-9][0-9][0-9][0-9]' ) 第 5 章 约 束 、 默 认 和 规 则 < >
5.2约束 5.2.5 PRIMARY KEY(主键)约束 在一个表中,存在着这样的字段,它在每个记录 束 中的值都是惟一的,因此可以用来标识表中的各个不 同记录。这样的字段被称为关键字,关键字可以是列 和或列的组合。例如学生情况表中的 StudentI列就是 规一个关键字,因为每个学生的学号必须是惟一的。 当表中有两个或两个以上的列或列的组合满足以 上条件时,称这些列或列的组合为候选关键字 当表的关键字多于一个时,可以将其中的一个关 键字作为主键( PRIMARY KEY)
5.2 约束 5.2.5 PRIMARY KEY(主键)约束 在一个表中,存在着这样的字段,它在每个记录 中的值都是惟一的,因此可以用来标识表中的各个不 同记录。这样的字段被称为关键字,关键字可以是列 或列的组合。例如学生情况表中的StudentID列就是 一个关键字,因为每个学生的学号必须是惟一的。 当表中有两个或两个以上的列或列的组合满足以 上条件时,称这些列或列的组合为候选关键字。 当表的关键字多于一个时,可以将其中的一个关 键字作为主键(PRIMARY KEY)。 第 5 章 约 束 、 默 认 和 规 则 < >