SQLSEVER 中的那些鍵和約束,SQLSEVER約束
SQL Server中有五種約束類型,分別是 PRIMARY KEY約束、FOREIGN KEY約束、UNIQUE約束、DEFAULT約束、和CHECK約束。查看或者建立約束都要使用到 Microsoft SQL Server Managment Studio。
1. PRIMARY KEY約束
在表中常有一列或多列的組合,其值能唯一標識表中的每一行。這樣的一列或多列成為表的主鍵(Primary Key)。一個表只能有一個主鍵,而且主鍵約束中的列不可為空值。
查看PRIMARY KEY約束可以在object explorer中依次展開Databases –> 選擇你要查看的資料庫(在我的例子中是chargesystem) –> 表 –> 你要查看的表(在我的例子中是BasicTale)-> 列
如所示,Primary Key 有一把金色的小鑰匙。ModifyIDea 即為BasicTable表的primary key。
建立PRIMARY KEY約束可以右鍵點擊表,然後選擇設計,開啟資料表設計工具,選中行,點擊上面的金色小鑰匙,來建立Primary Key。
也可以右鍵點擊想設為主鍵的行,然後選擇設定主鍵。
2. FOREIGN KEY約束
外鍵(Foreign Key)是用於建立和加強兩個表(主表與從表)的一列或多列資料之間的串連的。建立約束的順序是先定義主表的主鍵,再對從表定義外鍵約束。
查看FOREIGN KEY約束,展開列,可以看到灰色的小鑰匙為Foreign Key;展開Keys,可以看到Foreign Key約束的名字為FK_contact_company。
在資料表設計工具中,也可以點擊上面的關係按鈕,這樣就可以查看到所有的Foreign Key約束
上面的例子可以看到billTable 表的OperatorID為外鍵,OperatorIDea 表的OperatorIDea為主鍵。
下面來示範一下如何建立的該Foreign Key約束。
同樣是點擊完關係按鈕之後,在彈出的對話方塊中選擇添加
然後點擊下面的紅色框內的按鈕:
按中那樣設定主表、主鍵和從表、外鍵
然後點擊 OK,不要忘記儲存你的設計。
3. UNIQUE約束(唯一鍵或索引)
UNIQUE約束用於確保表中的兩個資料行在非主鍵中沒有相同的列值。與PRIMARY KEY約束類似,UNIQUE約束也強制唯一性,但UNIQUE約束用於非主鍵的一列或多列組合,且一個表可以定義多個UNIQUE約束,另外UNIQUE約束可以用於定義多列組合。
還以BillTable為例,假設我們要約束BillIDea為唯一的,點擊管理索引和鍵
然後點擊Add來添加Unique約束
選擇列為BillID(ASC), 是唯一的為是。
關閉並儲存你的設計,這樣一個Unique約束就建立好了。
sqlserver表的唯一鍵約束怎設定?
1、未建立表,可以在查詢分析器裡,在列的後面添加一個unique,這就實現了唯一性限制式.
2、已經建立表,
alter table 表名
add constraint 約束名 unique (列名[也可稱為欄位])
sql server 2005中外鍵約束的使用
alter table [tbname外鍵表]add constraint FK_外鍵約束名 foreign key (外鍵列)references [tbname主鍵表](主鍵列)--所引用列必須是唯一鍵 on update cascade--可選串聯更新 on delete cascade--可選串聯刪除