请问.carid 主键,卡号为:1010 3576 **** ****开始,卡号一般是随机产生.这个约束怎么写?CARID是否可以定义为CHAR?如果这样,随机产生是否要定义IDENTITY?,好像又有冲突.

解决方案 »

  1.   

    carid 的位数肯定是16位吗?carid  like '10103576________'类型用char比较好
      

  2.   

    先创定规则:
    create rule rule_name as condition_expression
    将规则绑定到列上
    sp_bindrule rule_name,表.字段名
    ----------------------------------------
    或直接有check约束。
      

  3.   

    --解答:
    create table tb(
      carid char(20)
    )alter table tb
    drop constraint chk_caridalter table tb add constraint chk_carid check (carid like '%1010 3576%')insert tb
    select '1010 3576 12345'insert tb  --这个会报错!因为不符合check条件
    select '1011 3576 12345'
      

  4.   

    --解答:
    create table tb(
      carid char(20)
    )--alter table tb
    --drop constraint chk_caridalter table tb add constraint chk_carid check (carid like '%1010 3576%')insert tb
    select '1010 3576 12345'insert tb  --这个会报错!因为不符合check条件
    select '1011 3576 12345'