建立唯一的條件約束
您可以使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 2014 中建立唯一條件約束,以確保不會在未參與主鍵的特定資料行中輸入重複的值。 建立唯一條件約束會自動建立對應的唯一索引。
本主題內容
開始之前:
若要使用下列項目來建立唯一條件約束:
開始之前
安全性
權限
需要資料表的 ALTER 權限。
使用 SQL Server Management Studio
若要建立唯一條件約束
在物件總管中,以滑鼠右鍵按一下要加入唯一條件約束的資料表,然後按一下 [設計]。
在 [資料表設計工具] 功能表上,按一下 [索引/索引鍵]。
在 [索引/索引鍵] 對話方塊中,按一下 [加入]。
在 [一般] 底下的方格中,按一下 [類型],然後從屬性右邊的下拉式清單方塊中選擇 [唯一索引鍵]。
在 [檔案] 功能表上,按一下 [儲存「資料表名稱」]。
使用 TRANSACT-SQL
若要建立唯一條件約束
在物件總管中,連線到資料庫引擎的執行個體。
在標準列上,按一下 [新增查詢] 。
複製下列範例並將其貼到查詢視窗中,然後按一下 [執行] 。 此範例會建立
TransactionHistoryArchive4
資料表並且在TransactionID
資料行上建立唯一條件約束。USE AdventureWorks2012; GO CREATE TABLE Production.TransactionHistoryArchive4 ( TransactionID int NOT NULL, CONSTRAINT AK_TransactionID UNIQUE(TransactionID) ); GO
若要在現有的資料表上建立唯一條件約束
在物件總管中,連線到資料庫引擎的執行個體。
在標準列上,按一下 [新增查詢] 。
複製下列範例並將其貼到查詢視窗中,然後按一下 [執行] 。 此範例會在
PasswordHash
資料表中的PasswordSalt
和Person.Password
資料行上建立唯一條件約束。USE AdventureWorks2012; GO ALTER TABLE Person.Password ADD CONSTRAINT AK_Password UNIQUE (PasswordHash, PasswordSalt); GO
若要在新的資料表中建立唯一條件約束
在物件總管中,連線到資料庫引擎的執行個體。
在標準列上,按一下 [新增查詢] 。
複製下列範例並將其貼到查詢視窗中,然後按一下 [執行] 。 此範例會建立資料表並且在
TransactionID
資料行上定義唯一條件約束。USE AdventureWorks2012; GO CREATE TABLE Production.TransactionHistoryArchive2 ( TransactionID int NOT NULL, CONSTRAINT AK_TransactionID UNIQUE(TransactionID) ); GO
如需詳細資訊,請參閱 ALTER TABLE (Transact-SQL) 、 CREATE TABLE (Transact-SQL) 和 table_constraint (Transact-SQL ) 。