指定資料行的預設值
適用於: SQL Server 2016 (13.x) 和更新版本 Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW)
您可以使用 SQL Server Management Studio (SSMS),指定在資料表資料行中輸入的預設值。 您可以使用物件總管或執行 Transact-SQL 設定預設值。
如果您未將預設值指派給資料行,且使用者將資料行保留空白,則:
如果設定允許 Null 值的選項,
NULL
會插入資料行。如果沒有設定允許 Null 值的選項,資料行會保留空白,但是使用者必須在提供資料行的值之後,才能儲存資料列。
限制
在您開始之前,請留意下列限制和約束:
如果 [預設值] 欄位中的輸入內容取代繫結的預設值 (顯示為沒有括弧),系統會提示您解除繫結預設值,並使用新的預設值加以取代。
若要輸入文字字串,請以單引號 (
'
) 括住值。 請勿使用雙引號 ("
),因為它們會保留給引號識別項。若要輸入數字預設值,請輸入數字,但不要加上引號。
若要輸入物件/函數,請輸入物件/函數的名稱,但不要加上引號。
注意
在 Azure Synapse Analytics 中,只有常數可用於預設條件約束。 運算式不能與預設條件約束搭配使用。
權限
本文所述的動作需要資料表的 ALTER
權限。
使用 SQL Server Management Studio 指定預設值
您可以使用 SSMS 中的物件總管來指定資料表資料行的預設值。 若要如此做,請執行下列步驟:
在 SSMS 中連線到 SQL Server 執行個體。
在 [物件總管] 中,找到要變更小數位數的資料行,以滑鼠右鍵按一下包含該資料行的資料表,然後選取 [設計]。
選取您要指定預設值的資料行。
在 [資料行屬性] 索引標籤的 [預設值或繫結] 屬性中,輸入新的預設值。
若要輸入數字預設值,請輸入數字。 若為物件或函數,請輸入其名稱。 若為英數字元預設值,請在單引號內輸入值。
在 [檔案] 功能表,選取 [儲存<表格名稱>]。
使用 Transact-SQL 來指定預設值
透過使用 T-SQL,有許多不同的方式可用來指定資料行的預設值。 在下列每個範例中,您可以使用這些步驟開啟新的 Transact-SQL 查詢。
在物件總管中,連線到資料庫引擎的執行個體。
在標準列上,選取 [新增查詢] 。
複製範例並將其貼到查詢視窗中,然後選取 [執行]。
使用 ALTER TABLE
CREATE TABLE dbo.doc_exz (
column_a INT,
column_b INT
); -- Allows nulls.
GO
INSERT INTO dbo.doc_exz (column_a)
VALUES (7);
GO
ALTER TABLE dbo.doc_exz
ADD CONSTRAINT DF_Doc_Exz_Column_B DEFAULT 50 FOR column_b;
GO
使用 CREATE TABLE
CREATE TABLE dbo.doc_exz (
column_a INT,
column_b INT DEFAULT 50
);
使用具名條件約束
CREATE TABLE dbo.doc_exz (
column_a INT,
column_b INT CONSTRAINT DF_Doc_Exz_Column_B DEFAULT 50
);