Advertisement

SQL Server 支持执行断题验证

阅读量:

关于达成在SQL Server这一系统中涉及多个表和聚集操作的复杂完整性约束方案的方法

如果有收获记得支持,拜谢!

最近系统地学习了《数据库系统概论》课程后,在探索过程中遇到了一个棘手的问题。经过长时间的研究和尝试仍未能找到解决方案。向老师请教后才明了,在SQL Server环境中使用CREATE ASSERTION来实现完整性约束时必须依赖于触发器机制,并且需要在一个触发器内定义那些涉及多个表或聚合操作的数据完整性约束关系。现与大家分享这一发现。


在SQL中可以采用CREATE DDL指令集中的ASSERTION语句,并将其设定为一般性约束的形式。这允许我们建立包含多个表或多表聚合操作的关系完整性约束。一旦执行涉及相关关系的操作时(如插入、删除或更新),系统会自动检查这些操作是否符合预先声明的条件,并将不符合条件的操作予以阻止执行。


在教材中创建断言的语句格式:

复制代码
    CREATE ASSERTION <断言名><CHECK子句>

简单介绍一下,数据库中有三张表:

  • Student(学号, 姓名, 性别, 年龄, 所属院系)
  • Course(课程号, 课程名称, 相关课程编号, 学分数)
  • SC(学号, 课程号, 成绩)。

下面用一个例题进行演示

**例5.18 限制数据库课程最

全部评论 (0)

还没有任何评论哟~