我在现有的外键列上添加了一个默认约束,但它不起作用。
我尝试在外键列上添加Default约束,但它的缺省值不同。该列被设置为not null Int
。
ALTER TABLE [A] ADD CONSTRAINT [default_value] DEFAULT ((3)) FOR [ForeignKeyColumn]
GO
我尝试默认设置为3,但默认设置为0。
发布于 2019-02-08 22:29:23
从你的评论中:
我将它作为空字符串插入。
那么,如果您正在做以下操作:
insert into a (ForeignKeyColumn)
values ('');
如果ForeignKeyColumn
是一个数字,那么SQL将把这个''
转换成一个数字。瞧,这个数字是0
--所以不需要缺省值。
如果需要默认值,请将ForeignKeyColumn
保留在insert
之外。或者使用default
insert into a (ForeignKeyColumn)
values (default);
https://stackoverflow.com/questions/54600794
复制相似问题