1. 程式人生 > >SQL Server2012創建約束圖解

SQL Server2012創建約束圖解

nbsp 數據行 邏輯 規範 height com check約束 img 單擊

SQLServer中有五種約束:Primary Key約束、Foreign Key約束、Unique約束、Default約束和Check約束

1 Primary Key 約束

在表中常有一列或多列的組合,其值能唯一標識表中的每一行。

這樣的一列或多列成為表的主鍵(PrimaryKey)。一個表只能有一個主鍵,而且主鍵約束中的列不能為空值。只有主鍵列才能被作為其他表的外鍵所創建。

創建主鍵約束可以右鍵單擊表,選擇設計 。

技術分享

選中要創建主鍵的列,然後單擊上面的小鑰匙。

技術分享

也可以右鍵需要創建主鍵的列,然後單擊小鑰匙。

技術分享

2 Foreign Key 約束

外鍵約束是用來加強兩個表(主表和從表)的一列或多列數據之間的連接的。創建外鍵約束的順序是先定義主表的主鍵,然後定義從表的外鍵。也就是說只有主表的主鍵才能被從表用來作為外鍵使用,被約束的從表中的列可以不是主鍵,主表限制了從表更新和插入的操作。

右鍵單擊需要設置外鍵的列(此時的表是作為從表在外鍵中出現),選擇關系。

技術分享

接下來點擊添加 --> 表和列規範。

技術分享

在主鍵表中選擇主表和主表的主鍵列。

技術分享

設置完後保存即可。

3 Unique 約束

唯一約束確保表中的一列數據沒有相同的值。與主鍵約束類似,唯一約束也強制唯一性,但唯一約束用於非主鍵的一列或者多列的組合,且一個表可以定義多個唯一約束。

右鍵單擊要設置的列選擇索引 / 鍵。

技術分享

然後單擊添加按鈕。

技術分享

選擇需要設置的列,可以是一列也可以是多列的組合。

技術分享

關閉並保存設置。

4 Default 約束

若在表中定義了默認值約束,用戶在插入新的數據行時,如果該行沒有指定數據,那麽系統將默認值賦給該列,如果我們不設置默認值,系統默認為 NULL

以學生信息表為例,在表設計器中,為性別 sex 列填寫默認值男。

技術分享

5 Check 約束

Check 約束通過邏輯表達式來判斷數據的有效性,用來限制輸入一列或多列的值的範圍。在列中更新數據時,所要輸入的內容必須滿足 Check 約束的條件,否則將無法正確輸入。

以學生信息表中的 sex 為例,我們要限制 sex 列的值只能為男或女。

技術分享

技術分享

技術分享

技術分享

SQL Server2012創建約束圖解