帶您了解sql server聯(lián)合主鍵
sql server聯(lián)合主鍵是sql server數(shù)據(jù)庫中的重要概念,下面就為您詳細(xì)介紹sql server聯(lián)合主鍵的概念,希望對您能夠有所幫助。
sql server聯(lián)合主鍵是把一個表的主鍵和外鍵(或其他任意2個或2個以上的鍵作為sql server聯(lián)合主鍵,當(dāng)然需要符合主鍵的約束。)就是生成新的主鍵(概念上),作為引索。
主要適用于多用戶的文件管理。(例如簡單的網(wǎng)絡(luò)硬盤)
id為表主鍵,username用戶名要進(jìn)行約束(避免重復(fù)),F(xiàn)ileName為上傳的用戶自定義文件名,每個用戶自己的文件名是不能重復(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ù)是合理的,而且無違反任何約束。
然而數(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 |
這樣子就不能對FileName做單一約束。
解決方案有兩種:1sql server聯(lián)合主鍵聯(lián)合u_id和FileName。
【編輯推薦】