推荐课程:MySQL教程。
什么是数据表的复合主键 ?
所谓的复合主键,就是指你表的主键含有一个以上的字段组成 。
例如:
create table test ( name varchar(19), id number, value varchar(10), primary key (name,id) )
上面的name和id字段组合起来就是你test表的复合主键
它的出现是因为你的name字段可能会出现重名,所以要加上ID字段这样就可以保证你记录的唯一性
一般情况下,主键的字段长度和字段数目要越少越好
什么时候使用复合主键?
在一个主键不能唯一标识这个表中的记录的时候才使用复合主键
比如这种时候
商品品牌 | 商品型号 |
诺基亚 | 920 |
三星 | NOTE2 |
诺基亚 | 8088 |
比如这样商品品牌可能有重复,都是诺基亚,但是诺基亚厂商生产的商品型号是不会重复的
也比如,可能好多品牌都有920这个型号,但是一个品牌只有一个920的型号
所以就靠这样的联合主键来确定这条记录的唯一性