SQL Server關係的建立

2022-09-12 16:57:41 字數 2434 閱讀 1154

如果兩個表的相關列都是主鍵或具有唯一約束,建立的就是一對一關係。

如果只有一列具有主鍵或唯一約束,則建立的時一對多關係

關聯欄位的字元型別必須相同。

1. 一對一關係

use

[howie

]create

table

purchases

(docentry

intconstraint pk_pr primary

keynot

null

,vendor_number

varchar(20

),purchase_number

varchar(20) constraint uni_pr unique

,purchase_line

int,

purchase_price

float

,purchase_status

char

constraint ck_pr check(purchase_status in ('

c', '

o')) constraint de_pr default'o

',baseentry

intconstraint uni_bs unique(baseentry) constraint fp_pr foreign

key (baseentry) references

orders (docentry)--這個baseentry具有唯一約束和外來鍵約束,而orders的docentry具有主鍵約束,那麼這個外來鍵約束就具有一對一的關係

)go

2. 一對多關係

use

[howie

]create

table

purchases

(docentry

intconstraint pk_pr primary

keynot

null

,vendor_number

varchar(20

),purchase_number

varchar(20) constraint uni_pr unique

,purchase_line

int,

purchase_price

float

,purchase_status

char

constraint ck_pr check(purchase_status in ('

c', '

o')) constraint de_pr default'o

',baseentry

intconstraint fp_pr foreign

key (baseentry) references

orders (docentry)--purchases中的baseentry新建時不具有唯一或者主鍵約束,而orders中的docentry有主鍵約束時,為一對多關係。可以理解為客戶下的乙個訂單,我們需要向多家採購。)

go

3.更改關係

更改關係需要先刪掉原來的關係,再新增新的關係

alter

table

purchases

drop

constraint fp_pr --

刪掉外來鍵約束關係

alter

table

purchases

addconstraint fp_pr foreign

key (baseentry) references orders (docentry) --

新增外來鍵約束關係

4. 圖形化介面建立與維護關係

(1)在要新增關係的表上右擊,選擇設計

(2)在設計介面找到你要新增關係的列名,右擊 選擇關係

(3)在關係頁面,點選【表和列規範】右方的【...】

(4)下方介面設定外來鍵,一定記住果兩個表的相關列都是主鍵或具有唯一約束,建立的就是一對一關係,如果只有一列具有主鍵或唯一約束,則建立的是一對多關係。

SQL Server建立索引

什麼是索引 拿漢語字典的目錄頁 索引 打比方 正如漢語字典中的漢字按頁存放一樣,sql server中的資料記錄也是按頁存放的,每頁容量一般為4k 為了加快查詢的速度,漢語字 詞 典一般都有按拼音 筆畫 偏旁部首等排序的目錄 索引 我們可以選擇按拼音或筆畫查詢方式,快速查詢到需要的字 詞 同理,sq...

SQL Server建立索引

什麼是索引 拿漢語字典的目錄頁 索引 打比方 正如漢語字典中的漢字按頁存放一樣,sql server中的資料記錄也是按頁存放的,每頁容量一般為4k 為了加快查詢的速度,漢語字 詞 典一般都有按拼音 筆畫 偏旁部首等排序的目錄 索引 我們可以選擇按拼音或筆畫查詢方式,快速查詢到需要的字 詞 同理,sq...

SQL server 建立索引

排序 聚集索引 create clustered index inx entry stock bi on entry stock d entry stock bi 建立非聚集索引 create nonclustered index inx entry stock on entry stock d e...