(4) 用户自定义完整性约束 表course1 的自定义约束: Ccredit 取值范围{ 0 ,1,2,3,4,5 } 课程表的每一行的 Cno 与 cpno 不可相同
时间: 2024-05-03 07:19:02 浏览: 58
数据查询的详细代码和介绍
表course1的自定义完整性约束可以通过以下SQL语句实现:
```
-- 约束1:Ccredit取值范围{0,1,2,3,4,5}
ALTER TABLE course1 ADD CONSTRAINT check_Ccredit CHECK (Ccredit IN (0,1,2,3,4,5));
-- 约束2:Cno与cpno不可相同
ALTER TABLE course1 ADD CONSTRAINT check_Cno_cpno_unique CHECK (Cno <> cpno);
```
第一条语句使用 `CHECK` 约束来限制 `Ccredit` 只能取 0 至 5 的整数值,不允许其他值的出现。
第二条语句使用 `CHECK` 约束来限制 `Cno` 与 `cpno` 的取值不能相同。如果有一行的 `Cno` 与 `cpno` 相同,就会触发约束,导致插入或更新操作失败。
阅读全文