mssql sqlserver check列只能输入手机号码的方法分享


摘要:
下文讲述sqlserver中,通过约束设置列只能输入手机号码的方法分享,如下所示:
实验环境:sqlserver 2008 R2


实现思路:
由于手机号码具有位数一定和每个号码都是由数字组成,所以我们可以在编写约束的时候,可以使用以上规则进行限制,如下所示:

  ---限制列mobileCN上只可输入中国手机号码
   
   create table [maomao365.com]
     (keyId int identity(1,1),
      mobileCN  varchar(30)
     )
     go
      
    ---添加手机号码列约束-限制手机号码必须为11位,为非0数字开头
     ALTER TABLE   [maomao365.com] 
       add CONSTRAINT 
            chk_mobileCNCheck
         (
            len(mobileCN) =11
              and mobileCN like '[1-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'
         ) 
     
     go
     truncate table  [maomao365.com] 
     drop      table  [maomao365.com]