sql - 帮助解决删除表列默认值错误

标签 sql sql-server

我有一个表,我想删除或设置其中一列的默认值。我使用以下脚本:

ALTER TABLE AccAccountGroup ALTER COLUMN Name DROP DEFAULT

ALTER TABLE AccAccountGroup ALTER COLUMN Name SET DEFAULT 'default value'

当我运行脚本时,出现以下错误:

关键字“DEFAULT”附近的语法不正确。 => 用于放置脚本

关键字“SET”附近的语法不正确。 => 添加脚本

这些脚本来自msdn .

有什么问题吗?我使用 SQL Server 2008 R2。

最佳答案

我相信您的引用是针对 SQL Server Compact Edition 的。使用this one相反。

您需要使用 CONSTRAINT 语法,并且需要使用默认名称。即使您没有分配名称(我建议您将来这样做,因为这是一种很好的做法),SQL Server 也会分配一个名称,您可以使用 EXEC sp_help AccAccountGroup 找到该名称。 .

尝试这些语法:

ALTER TABLE AccAccountGroup
DROP CONSTRAINT <default name>

ALTER TABLE AccAccountGroup
ADD CONSTRAINT DF_AccAccountGroup_name DEFAULT 'default value' FOR name

关于sql - 帮助解决删除表列默认值错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6882880/

相关文章:

sql - 错误 - 未在预期位置找到关键字

Mysql 填补日期空白

SQL Server : how to transpose rows into columns

c# - 为什么 sp_executesql 不返回结果而直接 SP 调用返回结果?

sql - 如何限制子字符串以在 SQL Server 中的两个空格之间提取文本?

java - 存储过程仅返回多行中的一行

MySQL:我可以构建一个 IN 子句,将 SELECT 语句的结果和硬编码列表结合起来吗?

c# - 连接到 SQL 数据库时出错 : Cannot open database "Students.mdf" requested by the login. 登录失败

sql - "ORA-01438: value larger than specified precision allowed for this column"插入 3 时

sql-server - 使用sql查找方波上的兴趣点