不是主键只能有一个吗?怎么可以定义两个?
这是联合主键,两个字段同时作为主键,这两个字段的组合在在数据表中是唯一,且加了主键索引。
联合主键,我一般很少用到,原理和一个主键差不多,只不过他们两个联合起来是在表中唯一的
有时候你需要同时用两个特征来作为主键来描述一个表的某个属性,往往包含具有唯一性的效果
大家说的很清楚了,联合主键
主键的作用是唯一区分不同的记录。
主键可以由一个或者多个属性组成。
譬如,在学生信息表中,学号可以唯一区分一个学生的信息。
而有的时候,并不能唯一区分一条记录。例如在选课信息里,一个学号可对应许多课程号,单靠一个学号是不能区分一条选课记录的。
所以,你的问题中,就是两个属性共同组成一个主键的情形。
两个字段联合起来同时作为主键的,比如学生属性,你可以用学号作为主键,或者可以设置姓名+班级作为主键
主键是用来确定(标识)实体的唯一性,没有规定只有一个属性来做主键,当一个属性无法确定 某一个实体时,就要联合 其他属性他来确定实体,
即联合主键;OK!
联合主键 当一个字段没有办法保证它是唯一的时候可以用联合主键 即用两个来使它成为唯一的 达到主键的作用
这种是联合主键,在真实的现网开发中这种案例非常多的,就是根据两个值确定表中的一条记录,只要保证这两个值组合起来是唯一的就可以了!
解决了吗?可以私信我~
联合主键导致的问题。最后一行代码改改~
来晚了,楼上大神们,答案都对,就是联合主键啊