如果不指定not null子句,是否可以在所有列中设置not null子句?

时间:2016-12-09 16:52:06

标签: sql sql-server sql-server-2008 sql-server-2012

我可以在创建时未指定not null子句的情况下在所有列中设置not null子句吗?

是否存在为整个数据库或SQL Server实例配置此设置的设置?

1 个答案:

答案 0 :(得分:2)

对于T-SQL:SET ANSI_NULL_DFLT_OFF {ON | OFF}

  

当数据库的ANSI null默认选项为true时,更改会话的行为以覆盖新列的默认可为空性。

     

当在CREATE TABLE和ALTER TABLE语句中未指定列的可为空性时,此设置仅影响新列的可为空性。默认情况下,当SET ANSI_NULL_DFLT_OFF为ON时,如果未明确指定列的可为空状态,则使用ALTER TABLE和CREATE TABLE语句创建的新列为NOT NULL。 SET ANSI_NULL_DFLT_OFF不会影响使用显式NULL或NOT NULL创建的列。