代码之家  ›  专栏  ›  技术社区  ›  Max

SQL Server空约束

  •  10
  • Max  · 技术社区  · 14 年前

    在SQL Server 2008中,是否可以创建这样一个约束,以限制两列同时具有空值?以便

    Column1 Column2
    NULL    NULL   -- not allowed
    1       NULL   -- allowed
    NULL    2      -- allowed
    2       3      -- allowed
    
    1 回复  |  直到 14 年前
        1
  •  14
  •   gbn    14 年前
    ALTER TABLE MyTable WITH CHECK 
       ADD CONSTRAINT CK_MyTable_ColumNulls CHECK (Column1 IS NOT NULL OR Column2 IS NOT NULL)
    

    CREATE TABLE MyTable (
     Column1 int NULL,
     Column2 int NULL,
    
     CONSTRAINT CK_MyTable_ColumNulls CHECK (Column1 IS NOT NULL OR Column2 IS NOT NULL)
    )