这段代码在 SQL Server 2008 中无法工作:
ALTER TABLE Employee ALTER COLUMN CityBorn SET DEFAULT 'SANDNES'
出现错误:
关键字'SET'附近的语法不正确。
我做错了什么?
这段代码在 SQL Server 2008 中无法工作:
ALTER TABLE Employee ALTER COLUMN CityBorn SET DEFAULT 'SANDNES'
出现错误:
关键字'SET'附近的语法不正确。
我做错了什么?
我发现了三个简单的步骤来修改之前为null的已存在列
update orders
set BasicHours=0 where BasicHours is null
alter table orders
add default(0) for BasicHours
alter table orders
alter column CleanBasicHours decimal(7,2) not null
ADD DEFAULT
语法允许您添加默认值,而无需建立显式约束(这在我的情况下很重要)。 - Mike KeskinovALTER TABLE tblUser
ADD CONSTRAINT DF_User_CreatedON DEFAULT GETDATE() FOR CreatedOn
尝试执行以下命令:
ALTER TABLE Person11
ADD CONSTRAINT col_1_def
DEFAULT 'This is not NULL' FOR Address
像Yuck的答案一样,使用检查来允许脚本在不出错的情况下运行多次。(比使用information_schema.columns更少的代码/自定义字符串)
IF object_id('DF_SomeName', 'D') IS NULL BEGIN
Print 'Creating Constraint DF_SomeName'
ALTER TABLE Employee ADD CONSTRAINT DF_SomeName DEFAULT N'SANDNES' FOR CityBorn;
END