5
通常,我們需要向表中添加不可空的列,這是一項艱鉅的任務。使用默認約束與一樣不起作用,所以我們必須創建可爲空的列,將它們更新爲默認值,然後使它們不可爲空。有沒有更簡單的方法來做到這一點?如何使用默認值添加不可爲空的列
通常,我們需要向表中添加不可空的列,這是一項艱鉅的任務。使用默認約束與一樣不起作用,所以我們必須創建可爲空的列,將它們更新爲默認值,然後使它們不可爲空。有沒有更簡單的方法來做到這一點?如何使用默認值添加不可爲空的列
是的,WITH DEFUES修飾符應用於DEFAULT約束將默認值應用於現有行,消除了問題中描述的所有'硬'工作。
IF NOT EXISTS (SELECT * FROM sys.columns WHERE object_id=OBJECT_ID('[caConfig]') AND [Name]='ExportWizardVersion')
ALTER TABLE [caConfig]
ADD
[ExportWizardVersion] varchar(5) not null CONSTRAINT DF_caConfig_ExportWizardVersion DEFAULT '5.8' WITH VALUES,
[ExportPeriodEnd] varchar(10) not null CONSTRAINT DF_caConfig_ExportPeriodEnd DEFAULT 'MonthEnd' WITH VALUES