SQL server查询以添加具有默认值的列



我正试图通过向表中添加另一列(默认值为0(来更改SQL server数据库。

我认为这个脚本在过去是有效的(对于另一个表(,但现在我在尝试执行脚本时出现了错误

脚本

ALTER TABLE Whatever
ADD WhateverColumn tinyint NOT NULL 
DEFAULT(0)

错误

  • 将鼠标悬停在"NOT"上时:"NOT"附近的语法不正确。应为"TO">
  • 将鼠标悬停在"0"上时:0附近的语法不正确。应为"("或SELECT

有人知道这是怎么回事吗?

试试这个:

ALTER TABLE Whatever
ADD WhateverColumn tinyint NOT NULL DEFAULT 0

也许你用作表名的"Whatever"有未闭合的引号,甚至"WhateverColumn"(你放在这里作为标记,我明白了(我有这个问题,或者甚至"WhateverColumn"的实际名称是保留字?


@SammuelMiranda刚才也提出了同样的问题。如果您同时使用保留关键字作为表名或列名,这很重要
您可以查看此链接将具有默认值的列添加到SQL Server 中的现有表中

正如我所料,将我的SQL Server Management Studio更新到17.8.1版本解决了我的问题
更新后,我能够毫无问题地运行此命令。

最新更新