復合主鍵:資料庫表的主鍵由兩個及以上的字段組成。
create table `asm_device_config_info` (
`asmmodel` varchar(32) not null comment '自助機型號',
`devicetype` varchar(32) not null comment '外設型別',
`devicemodel` varchar(32) not null comment '外設型號',
`devicefactory` varchar(32) not null comment '外設廠商',
primary key (`asmmodel`,`devicetype`)
) engine=innodb default charset=utf8 comment='自助機外圍裝置配置資訊表';
聯合主鍵:多個主鍵聯合形成乙個主鍵的組合。
適用情景:當兩個資料表是多對多的關係,需要通過兩個資料表的主鍵來組成聯合主鍵,來確定一條記錄
student以studentid為主鍵course以courseid為主鍵create table `student` (
`studentid` varchar(32) not null comment '學號',
`studentname` varchar(32) not null comment '姓名',
`studentgender` varchar(32) not null comment '性別',
`studentage` int default null comment '年齡',
primary key (`studentid`)
) engine=innodb default charset=utf8 comment='學生資訊表';
student_course通過studentid與courseid確定主鍵idcreate table `course` (
`courseid` varchar(32) not null comment '課程id',
`coursename` varchar(32) not null comment '課程名稱',
`coursecredit` varchar(32) not null comment '課程學分',
primary key (`courseid`)
) engine=innodb default charset=utf8 comment='課程資訊表';
create table `student_course` (
`id` int auto_increment comment '選課id',
`studentid` varchar(32) not null comment '學號',
`courseid` varchar(32) not null comment '課程id',
primary key (`id`)
) engine=innodb default charset=utf8 comment='學生選課表';
復合主鍵與聯合主鍵
含義 表的主鍵含有乙個以上的字段組成,不使用無業務含義的自增id作為主鍵。比如 create table test namevarchar 19 idnumber,valuevarchar 10 primarykey name,id 上面的name和id欄位組合起來就是你test表的復合主鍵 它的出...
復合主鍵與聯合主鍵
一 復合主鍵 所謂的復合主鍵 就是指你表的主鍵含有乙個以上的字段組成,不使用無業務含義的自增id作為主鍵。比如 html view plain copy create table test name varchar 19 id number,value varchar 10 primary key ...
聯合主鍵和復合主鍵
聯合主鍵其實就是中間表。在多對多模型裡,需要兩個表中的主鍵組成聯合主鍵,這樣就可以查到兩個表中的每個資料。建立team表 create table team id mediumint auto increment comment team 主鍵 name varchar 10 comment tea...