gpt4 book ai didi

sql-server - 如何在向表中添加具有默认值的新列时为现有行设置默认值

转载 作者:行者123 更新时间:2023-12-03 23:18:29 25 4
gpt4 key购买 nike

我有 100 行的表,我正在添加具有默认值的新列,如下所示。

ALTER  TABLE AccountDetails
ADD
UpdatedOn DATETIME DEFAULT GETDATE(),
UpdatedBy VARCHAR(50) DEFAULT 'System'

执行这个alter 语句后,新的列将被添加到表中......这是完美的!但是,这些列的现有行的值将为 NULL。

无论如何,默认情况下它会有默认值而不是为那些列执行单独的更新语句来显式更新默认值?

最佳答案

我自己得到了答案。如果我们将 NOT NULL 约束也放在 alter 语句中,那么在更改表以添加新列时,默认值将应用于新列并且不会违反非空约束。

   ALTER  TABLE AccountDetails
ADD
UpdatedOn DATETIME NOT NULL DEFAULT GETDATE(),
UpdatedBy VARCHAR(50) NOT NULL DEFAULT 'System'

关于sql-server - 如何在向表中添加具有默认值的新列时为现有行设置默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43239037/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com