如何创建两个字的SQL CHECK约束条件

日期: 2008-10-26 作者:Rudy Limeback翻译:April 来源:TechTarget中国 英文

问:我现在对VARCHA数据类型变量使用check约束条件。该check约束条件应该只接受两个字母,如:’AB’或’XY’。请问我该如何创建check约束条件?   答:创建过程如下:  CREATE TABLE twoletters     ( code CHAR(2) NOT NULL     , CONSTRAINT twoletters    ……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

问:我现在对VARCHA数据类型变量使用check约束条件。该check约束条件应该只接受两个字母,如:'AB'或'XY'。请问我该如何创建check约束条件?

  答:创建过程如下:


 CREATE TABLE twoletters
    ( code CHAR(2) NOT NULL
    , CONSTRAINT twoletters
       CHECK ( CHARACTER_LENGTH(code) = 2
           AND SUBSTRING(code FROM 1 FOR 1)
                 BETWEEN 'A' AND 'Z'
           AND SUBSTRING(code FROM 2 FOR 1)
                 BETWEEN 'A' AND 'Z' )
    );

  注意我选择的是CHAR(2)。它允许省略CHARACTER_LENGTH条件,但是如果你不能在VARCHAR中改变列就不要省略它。

  你可以改变SQL函数的标准(CHARACTER_LENGTH和SUBSTRING),使它和具体的数据库系统配对。例如:在SQL Server中你可以使用LEN(code)和SUBSTRING(code,1,1)。

翻译

April
April

相关推荐