数据库的检查约束check约束详解数据库

数据中的约束,主要有主键约束,外键约束,非空约束等。

主键约束其实就是非空唯一约束,非空唯一约束也可以通过建立唯一索引来实现,外键约束需要通过其他的表来帮助实现,非空约束在定义是数据库字段时就定义了。还有另一类约束check约束,用处挺大的,只是自己很少使用。

  那check约束可以实现那些功能呢?

  1范围规定

  2枚举值规定

  3特定的匹配

1范围规定

  例如规定,金额只能大于0

  ALTER TABLE tablename ADD CHECK (jine>0)

2枚举值规定

例如难度级别,只能为,1,2,3,4

ALTER TABLE tablename  ADD CHECK (nandu>0 and nandu<5) //定位为整形时

或者

ALTER TABLE tablename  ADD CHECK (nandu in (1,2,3,4)) //定位为整形时

 3特定的匹配

  因为数据库中可以使用like的正则表达式,因此也能完成一些特定的匹配

  例如必须以9开头的

ALTER TABLE tablename  ADD CHECK (fieldName like'9%')

  

当然每种数据库的规则,又有很大不同,导致实现的细节会有所不一样。

这些都是由check可以使用的规则决定的,如果check中可以使用自定义函数,则check约束的范围将大大扩展。

  其实需要注意的是,空值的处理,因为空值的比较结果是未知,不是真也不是假.

check中可以使用的运算符,主要有>,<,and ,or,not,like,in等。



原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/6699.html

(0)
上一篇 2021年7月17日
下一篇 2021年7月17日

相关推荐

发表回复

登录后才能评论