SQL 服务器查询以添加具有默认值的列
SQL server query to add column with default value
我正在尝试通过向 table 添加另一列并将 0 作为默认值来更改我的 SQL 服务器数据库。
我认为这个脚本过去有效(另一个 table),但现在我尝试执行该脚本时出现错误
The script
ALTER TABLE Whatever
ADD WhateverColumn tinyint NOT NULL
DEFAULT(0)
The errors
- 将鼠标悬停在 "NOT" 上时:'NOT' 附近的语法不正确。预计 'TO'
- 将鼠标悬停在“0”上时:0 附近的语法不正确。需要“(”或 SELECT
有人知道这有什么问题吗?
试试这个:
ALTER TABLE Whatever
ADD WhateverColumn tinyint NOT NULL DEFAULT 0
也许您正在使用的 "Whatever" 作为 table 名称有未闭合的引号,甚至 "WhateverColumn"(您将两者都放在此处作为标记,我明白了)我有这个问题,甚至 "WhateverColumn" 实际名称是保留字?
@SammuelMiranda 刚才也问过同样的问题。如果您将保留关键字用作 table 或列名也很重要。
你可以检查这个 link
Add a column with a default value to an existing table in SQL Server
如我所料,将我的 SQL Server Management Studio 更新到版本 17.8.1 解决了我的问题。
更新后,我可以运行这个命令没有任何问题。
我正在尝试通过向 table 添加另一列并将 0 作为默认值来更改我的 SQL 服务器数据库。
我认为这个脚本过去有效(另一个 table),但现在我尝试执行该脚本时出现错误
The script
ALTER TABLE Whatever
ADD WhateverColumn tinyint NOT NULL
DEFAULT(0)
The errors
- 将鼠标悬停在 "NOT" 上时:'NOT' 附近的语法不正确。预计 'TO'
- 将鼠标悬停在“0”上时:0 附近的语法不正确。需要“(”或 SELECT
有人知道这有什么问题吗?
试试这个:
ALTER TABLE Whatever
ADD WhateverColumn tinyint NOT NULL DEFAULT 0
也许您正在使用的 "Whatever" 作为 table 名称有未闭合的引号,甚至 "WhateverColumn"(您将两者都放在此处作为标记,我明白了)我有这个问题,甚至 "WhateverColumn" 实际名称是保留字?
@SammuelMiranda 刚才也问过同样的问题。如果您将保留关键字用作 table 或列名也很重要。
你可以检查这个 link
Add a column with a default value to an existing table in SQL Server
如我所料,将我的 SQL Server Management Studio 更新到版本 17.8.1 解决了我的问题。
更新后,我可以运行这个命令没有任何问题。