sql-server – 是否有理由在可空的列上指定DEFAULT(NULL)?

我最初创建了一个这样的表:
CREATE TABLE dbo.XX (
YY int DEFAULT(NULL)
)

如果你这样做,然后再脚本表,你会得到以下代码,加上一个随机命名的认约束:

CREATE TABLE [dbo].XX([YY] [int] NULL) 
GO
ALTER TABLE [dbo].XX ADD  DEFAULT (NULL) FOR [YY]
GO

现在在列上指定DEFAULT(NULL)有什么意义,而不是首先将它保留为[YY] [int] NULL?

解决方法

没有必要向可空列添加DEFAULT(NULL).

如果数据未提供给这些列,则它们将具有NULL.

我看到的唯一好处是Larry Lustig在他的评论中发布了这个问题 – 它记录了你没有忘记添加一个认值为null的列.

相关文章

SELECT a.*,b.dp_name,c.pa_name,fm_name=(CASE WHEN a.fm_n...
if not exists(select name from syscolumns where name=&am...
select a.*,pano=a.pa_no,b.pa_name,f.dp_name,e.fw_state_n...
要在 SQL Server 2019 中设置定时自动重启,可以使用 Window...
您收到的错误消息表明数据库 'EastRiver' 的...
首先我需要查询出需要使用SQL Server Profiler跟踪的数据库标...