我坚持为已创建的列定义默认值。
我创建了一个列并没有在其中设置默认值但后来我意识到我应该使用alter设置默认值。所以我尝试了但是在每个地方搜索失败但没有找到解决方案。
这是代码
create table stock
(
item_name varchar(200),
item_code varchar(50),
Price int,
availabilty varchar(20),
constraint i_n unique(item_name),
constraint i_c primary key(item_code)
)
现在使用insert into
向其添加一些数据后,我无法在价格列中添加默认约束。
请帮助我,了解如何使用alter
如果我添加像这样的约束
alter table stock
add constraint ID default '' (price)
ssms将其检测为错误并说
Msg 142,Level 15,State 2,Line 0
用于定义'TABLE'约束的语法不正确。
我正在使用SQL Server 2008
谢谢
答案 0 :(得分:3)
你需要使用它:
ALTER TABLE dbo.Stock
ADD CONSTRAINT DF_Stock_Price DEFAULT(0) FOR Price
由于Price
是INT
列,因此无法将''
定义为默认值 - 它必须是有效的INT
值!