Sql Server 2008 R2表列和默认值

时间:2013-08-28 16:12:49

标签: sql-server

表格列中的默认值是多少? 根据{{​​3}}

  

您可以指定将在列中输入的默认值   SQL Server 2012使用SQL Server Management Studio或Transact-SQL。   如果您未指定默认值,则用户将离开该列   空白,然后:

     
      
  • 如果将选项设置为允许空值,则会将NULL插入列中。
  •   
  • 如果未将选项设置为允许空值,则该列将保持空白,但用户将无法保存该行   为列提供值。
  •   

我不明白!如果您不允许列上的空值,它肯定会在该列中插入默认值(如果用户未提供)。 那为什么不呢?

1 个答案:

答案 0 :(得分:7)

你一定错过了文档的一部分。

  

您可以指定将在列中输入的默认值   SQL Server 2012使用SQL Server Management Studio或Transact-SQL。   如果您未指定默认值,则用户将离开该列   空白,然后:如果将选项设置为允许空值,则NULL将为   插入到列中。如果未将选项设置为允许null   值,该列将保持空白,但用户将无法   保存行,直到它们为列提供值。

因此,如果您指定了默认值,当用户将列留空时,它将用作赋值。

“有点奇怪的事情”是该文档首先解释如果你不使用默认会发生什么(这可能不是你正在等待的:你想知道你什么时候会发生什么用它)。我第一次“太快”阅读时也感到困惑。