在SQL Server 2000中为Not Null约束起了个名字,为什么却找不见这个约束名?

解决方案 »

  1.   

    CREATE TABLE S
          ( Sno  CHAR(6)
            CONSTRAINT C1 CHECK (Sno BETWEEN 90000 AND 99999),
            Sname  CHAR(20)  
            CONSTRAINT C2 NOT NULL,
            Sage  SMALLINT
            CONSTRAINT C3 CHECK (Sage < 30),
            Ssex  CHAR(2)
            CONSTRAINT C4 CHECK (Ssex IN ( '男','女')),
            CONSTRAINT StudentKey PRIMARY KEY(Sno)
          )在创建这个关系时,创建了5个约束,分别起名为C1,C2,C3,C4和StudentKey,其他的约束名在企业管理器和查询分析器中都能看到,但是C2约束名就是找不到
      

  2.   

    Not Null 是在Sqlserver的系统表sysColumns的isnullable和status字段记录,不会记录成约束的,所以你看不到
      

  3.   

    C2约束属于DEFAULT约束,可直接在“设计表”模式查看
    C1、C3、C4属于CHECK约束,可在“表属性-CHECK约束”下查看
    StudentKey属于PRIMARY KEY约束,可在“表属性-索引/键”下查看