浅谈SQL SEVER中约束跟规则的异同
浅谈SQL SEVER中约束和规则的异同
规则和约束是用来对想要限定的表中某些数据操作的操作法则。通俗点就是,允许什么样的数据输入不允许什么样的输入等操作,都受到规则或约束的限定。
约束:强制实行的应用规则,通过限制列中数据,行中数据和表之间数据来保证数据的完整性,独立于表结构。通常包括四种约束类型:主键约束,唯一性约束,核查性约束和外键约束。
语法:CONSTRSAINT + 约束名 + 约束类型
规则是一种数据库对象,可以绑定到字段或者用户自定义数据类型,并制定字段可以接受哪些数据值的数据库对象,通常执行一些与check约束相同的功能。
语法:CREATE rule rule_name ascondition_expresstion
不同:
1 约束是和表的定义联系在一起的,删除表的同时约束也被删除 。规则作为一种单独存储的数据库对象,独立于表之外,删除表时并不删除规则对象。
2 一个字段可以有多个约束,但是却只能有一个规则。
- 2楼dandanzmc昨天 19:10
- 我觉得再把触发器放一起比较一下更好
- 1楼zllaptx48694天前 08:35
- 还有进步思考的空间!!!