0

我开始知道,在 Sql Server 中,我们可以在默认约束内设置具有指定值的列内的WITH VALUES数据。NULL但是我的查询没有在已经存在的列中设置值NULL,即使我使用WITH VALUES了,如果我错了,请更正查询。我的查询是

GO
CREATE TABLE [dbo].[DefaultTest]
(
    [id] [int] NULL
) 
GO
INSERT INTO [dbo].[DefaultTest]
SELECT NULL
GO
ALTER TABLE [dbo].[DefaultTest] 
ADD  CONSTRAINT [con_Test]  DEFAULT 1 FOR [id]
WITH VALUES
GO
SELECT * FROM [DefaultTest]
GO
DROP TABLE [DefaultTest]

执行查询后,我注意到该列仍然只包含 NULL 而不是 1。

4

1 回答 1

0

MSDN

[WITH VALUES] 在添加新列时使用,它应该有一些价值。如果您不通过 [ALTER] 运算符添加新列,则 [WITH VALUES] 选项将被忽略。

如果在未添加相关列时使用它,则它没有效果。

于 2018-09-03T10:43:31.017 回答