聯合主鍵就是用2個或2個以上的字段組成主鍵。用這個主鍵包含的字段作為主鍵,這個組合在資料表中是唯一,且加了主鍵索引。
可以這麼理解,比如,你的訂單表裡有很多字段,一般情況只要有個訂單號bill_no做主鍵就可以了,但是,現在要求可能會有補
充訂單,使用相同的訂單號,那麼這時單獨使用訂單號就不可以了,因為會有重複。那麼你可以再使用個訂單序列號bill_seq來
作為區別。把bill_no和bill_seq設成聯合主鍵。即使bill_no相同,bill_seq不同也是可以的。
alter table 表 add constraint pk_name primary key (列1,列2,…)
聯合主鍵的好處是不需要因為需要主鍵而增加乙個無用的主鍵列 例如如果不用聯合主鍵你必須增加個列id設定主鍵 但這個id列
無任何作用 至於在什麼情況下使用,就像剛才舉例的,當你這個表的主鍵id無任何用處,那麼就用聯合主鍵好了,你可以節約
乙個列的空間,但如果這錶的id列要做為別的表的外來鍵的話,就不能用聯合主鍵了。
聯合主鍵就是確定一條記錄的唯一性啊
比如這種時候
商品品牌 商品型號
諾基亞 920
三星 note2
諾基亞 8088
比如這樣商品品牌可能有重複,都是諾基亞,但是諾基亞廠商生產的商品型號是不會重複的
也比如,可能好多品牌都有920這個型號,但是乙個品牌只有乙個920的型號
所以就靠這樣的聯合主鍵來確定這條記錄的唯一性
建立方法如下
create
table product(
pro_name varchar(20),
pro_type varchar(20),
primary
key (pro_name,pro_type)
);
聯合主鍵有什麼用?
聯合主鍵就是用2個或2個以上的字段組成主鍵。用這個主鍵包含的字段作為主鍵,這個組合在資料表中是唯一,且加了主鍵索引。可以這麼理解,比如,你的訂單表裡有很多字段,一般情況只要有個訂單號bill no做主鍵就可以了,但是,現在要求可能會有補 充訂單,使用相同的訂單號,那麼這時單獨使用訂單號就不可以了,因...
mysql 主鍵作用 mysql主鍵有什麼用?
建立乙個表,建立主鍵是個良好的習慣或應當作為規範,若 可能累計大量資料,必須設定主鍵,並且應當選擇合適的主鍵,否則你會嚴重影響到count查詢,insert,delete。下面本篇文章就來給大家介紹一下mysql中什麼是主鍵,主鍵有什麼用,希望對你們有所幫助。什麼是主鍵?資料庫主鍵,指的是乙個列或多...
dev null有什麼用
把 dev null 看作 黑洞 它非常等價於乙個只寫檔案.所有寫入它的內容都會永遠丟失.而嘗試從它那兒讀取內容則什麼也讀不到.然而,dev null 對命令列和指令碼都非常的有用.禁止 標準輸出 cat filename dev null 禁止 標準錯誤 rm badname 2 dev null...