3

当您在SQL Server Management Studio表设计器的列中使用默认值时,SSMS会更改您的默认值,并在(在所有版本和所有版本的SQL Server中)括号括起括号。例如,如果您将0设置为默认值,则此默认值更改为(0)。我不知道为什么sql server使用括号,并且有一个实际的原因。SQL Server列的默认值

在此先感谢。

+0

你在说什么?在表设计器中,当你指定默认值? –

+0

@ Damien_The_Unbeliever.yes,当然。我编辑我的帖子。 –

回答

2

存在某些对象类型,如DEFAULT s和CHECK约束,SQL Server不存储原始的文本形式 - 与存储过程相比,您可以(不存在加密)始终检索它的确切形式是你给它的服务器 - 完成任何空格,格式,评论等

由于SQL Server不存储文本形式,它总是必须重新生成文本形式来显示给用户时,他们要求这样的对象。何时何地选择插入圆括号可能有点神秘(没有记录),但由于它们不改变表达的含义,所以它们不应该成为问题。

1

实际上,0(0)将评估为相同的结果,所以没有什么可以真正克服的。忽略它。这就是SQL如何在内部存储它们以及可见性问题。 它是这样做的,它也是交互式的。不知道为什么会这样,但不要担心。