SQL中:check与 contriate语句约束的区别

check与 contriate语句约束的区别

  • 区别
    • 1.check检查
      • 语法区别
      • 约束定位的内容
    • 2.constraint约束
      • 语法区别
      • 约束定位的内容
    • 3.总结

check与 contriate语句约束的区别)

区别

1.check检查

语法区别

check (条件表达式)

例:

create table sc
(
Ssex char(2) check (Ssex in ('男','女'))
)

约束定位的内容

check 是对属性上的约束,它是检查列值是否满足一个条件表达式,用于在插入或更新数据之前验证数据的一致性,不满足条件则拒绝更新或插入。

2.constraint约束

语法区别

constraint <约束名> <约束条件>
例:

create table student
(
sno numeric(6)
constraint c1 check(sno between  10 and 100),

sname char(20)
constraint c2 not null,

sage numeric(3)
constraint c3 check(sage<30)

ssex char(2)
constraint a1 check(ssex in('男','女')),
constraint studentkey primary key(sno)

约束定位的内容

constraint 用于定义对数据库表中某个列或多个列的约束。它可以规定某种限制条件,以便确保数据的完整性和一致性。约束可以对列设置各种限制,例如唯一性、非空性和外键关系等。约束还可以定义在多个列之间的关系,例如主键和外键的关系。

3.总结

1.可以说 check约束 包含于 constraint约束,即是constraint约束的范围更广,可以约束 “check约束” 中不能约束的地方。

2.另外,constraint约束可对 约束条件命名,而check约束则不行。(这个直接可以在视图中体现出来;没有命名的则默认命名,自己给命名的则以命名时的名称出现)
如下所示:
SQL中:check与 contriate语句约束的区别_第1张图片

3.Check约束是用于验证数据的特定条件是否满足,而Constraint约束是用于定义对数据库表中列或多个列的限制条件。

 
 
—————————————————————
以上就是今日博客的全部内容了
创作不易,若对您有帮助,可否打赏、赞助一二呢, 感谢支持。

你可能感兴趣的:(SQL,sql,数据库)