Linux 拨号vps windows公众号手机端

数据库check约束如何写

lewis 8年前 (2017-02-21) 阅读数 9 #程序编程
文章标签 数据库

在数据库中,可以使用CHECK约束来限制列中的值。CHECK约束定义了一些条件,当插入或更新行时必须满足这些条件。

CHECK约束的语法如下:

CREATETABLEtable_name(

column_namedata_typeCONSTRAINTconstraint_nameCHECK(condition)

);

其中,table_name是表名,column_name是列名,data_type是列的数据类型,constraint_name是约束的名称,condition是满足约束的条件。

下面是一些示例:

  1. 限制列中的值必须大于0:

CREATETABLEemployees(

idINT,

salaryDECIMALCONSTRAINTcheck_salaryCHECK(salary>0)

);

  1. 限制列中的值必须在指定的范围内:

CREATETABLEstudents(

idINT,

ageINTCONSTRAINTcheck_ageCHECK(age>=18ANDage<=25)

);

  1. 限制列中的值必须满足某些正则表达式:

CREATETABLEemails(

idINT,

emailVARCHAR(255)CONSTRAINTcheck_emailCHECK(email~*&#x27;^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$&#x27;)

);

  1. 限制列中的值必须满足其他列之间的关系:

CREATETABLEorders(

idINT,

total_amountDECIMAL,

discountDECIMALCONSTRAINTcheck_discountCHECK(discount>=0ANDdiscount<=total_amount)

);

以上是一些常见的CHECK约束的示例,你可以根据具体的需求自定义更多的约束条件。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门