帶您了解sql server聯(lián)合主鍵
sql server聯(lián)合主鍵是sql server數(shù)據(jù)庫(kù)中的重要概念,下面就為您詳細(xì)介紹sql server聯(lián)合主鍵的概念,希望對(duì)您能夠有所幫助。
sql server聯(lián)合主鍵是把一個(gè)表的主鍵和外鍵(或其他任意2個(gè)或2個(gè)以上的鍵作為sql server聯(lián)合主鍵,當(dāng)然需要符合主鍵的約束。)就是生成新的主鍵(概念上),作為引索。
主要適用于多用戶(hù)的文件管理。(例如簡(jiǎn)單的網(wǎng)絡(luò)硬盤(pán))
id為表主鍵,username用戶(hù)名要進(jìn)行約束(避免重復(fù)),F(xiàn)ileName為上傳的用戶(hù)自定義文件名,每個(gè)用戶(hù)自己的文件名是不能重復(fù)的。
這樣的結(jié)構(gòu)
表1:user表
id(PK_key/FK) | username(U) |
1 | aaa |
2 | bbb |
表2:file表
id(PK_key) | u_id(U) | FileName |
1 | 1 | test.jpg |
2 | 1 | abc.jpg |
以上的數(shù)據(jù)是合理的,而且無(wú)違反任何約束。
然而數(shù)據(jù)如果是這樣:
id(PK_key/FK) | username(U) |
1 | aaa |
2 | bbb |
id(PK_key) | u_id(U) | FileName |
1 | 1 | test.jpg |
2 | 2 | test.jpg |
這樣子就不能對(duì)FileName做單一約束。
解決方案有兩種:1sql server聯(lián)合主鍵聯(lián)合u_id和FileName。
【編輯推薦】
T-SQL語(yǔ)句創(chuàng)建SQL Server索引