DEFAULT((0))和DEFAULT(0)有什么区别?有没有?

时间:2019-11-18 14:30:07

标签: sql-server sql-server-2008

我问的原因是我正在比较两个SQL 2008服务器上的数据库。

一个脚本使用两个(())在特定表上编写DEFAULTS脚本,另一个脚本仅使用一个()?

1 个答案:

答案 0 :(得分:1)

default(0)有一组不必要的括号。
default((0))有两组不必要的括号。

这是一个演示:

CREATE TABLE Test
(
    Id int identity(1,1),
    Col0 int default 0,
    Col1 int default (0),
    Col2 int default ((0))
);

INSERT INTO Test DEFAULT VALUES;
INSERT INTO Test DEFAULT VALUES;

SELECT Id, Col0, Col1, Col2
FROM Test

结果:

Id  Col0    Col1    Col2
1   0       0       0
2   0       0       0  

顺便说一句,如果您正在使用SQL Server 2008,则应认真考虑升级系统,因为该系统自2019年7月起已不再提供扩展支持。
2005版的扩展支持已于2016年4月终止,因此,如果您使用的是此版本,则无需进行任何更新。