Sql-Server
添加非空列
我有一個現有表,我在其中添加一列,
NgoId
其數據類型為int
. 我想添加NOT NULL
到該列。當我添加這個時,我收到以下錯誤:
無法修改表。無法將值 NULL 插入列“NgoId”、表“CSR.dbo.Tmp_tbl_post_category”;列不允許空值。插入失敗。該語句已終止。
請幫助如何添加 NOT NULL 列。
由於表中已有數據,因此無法添加
NOT NULL
欄位,因為現有數據已違反NOT NULL
約束。因此,您有 2 個選擇:
a)添加具有
DEFAULT
值的列…ALTER TABLE dbo.Tmp_tbl_post_category ADD NgoId INT DEFAULT 1;
…然後執行更新語句以將值更正為實際應有的值
b)從表中截斷數據,添加列,然後重新填充表…
TRUNCATE TABLE dbo.Tmp_tbl_post_category; ALTER TABLE dbo.Tmp_tbl_post_category ADD NgoId INT; INSERT INTO dbo.Tmp_tbl_post_category...