我创建了一个新的Column S_TEST并将其默认值设置为2并保存该表,但是不幸的是旧记录没有自动设置,而是具有NULL值。查看我的屏幕截图。
<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9DdTk0NS5wbmcifQ==” alt =“设置默认值”>
<< img src =“ https://image.soinside.com/eyJ1cmwiOiAiaHR0cHM6Ly9pLnN0YWNrLmltZ3VyLmNvbS9MZnlzTi5wbmcifQ==” alt =“已尝试查询”>
如果添加的新列为not null,则默认约束将自动使用现有行的默认值填充该列。
如果添加的新列为[[nullable,则DDL语句应具有WITH VALUES
选项以强制设置现有行的默认值。
ALTER TABLE dbo.tab ADD Col int NULL DEFAULT 10 WITH VALUES ;