各位大哥大姐:
MSSQL 2000中的ansi null默认设置选项无论勾、没勾在数据库中创建表时,
如果未显式的指定表列允许null或not null,都可以给该列插入null值
这是怎么回事啊?
我的是mssql 2000个人版 操作系统为xp

解决方案 »

  1.   

    未显式的指定表列允许null或not null
    ----
    默认是允许NULLansi null和这个没有关系。
      

  2.   

    http://msdn.microsoft.com/zh-cn/library/ms188048%28v=SQL.100%29.aspx
      

  3.   

    你应该设置 ANSI_NULL_DEFAULTalter databse db_name  set ANSI_NULL_DEFAULT OFF
    ANSI_NULL_DEFAULT
     确定在 CREATE TABLE 或 ALTER TABLE 语句中未显式定义为空性的 alias 数据类型或 CLR user-defined type 列的默认值(NULL 或 NOT NULL)。当指定为 ON 时,默认值为 NULL。当指定为 OFF 时,默认值为 NOT NULL。
     OFF
     
    ANSI_NULLS
     当指定为 ON 时,所有与空值的比较运算计算结果为 UNKNOWN。当指定为 OFF 时,非 UNICODE 值与空值的比较运算在两者均为 NULL 时结果为 TRUE。