文章摘要
这篇文章介绍了MySQL中的复合主键和联合主键的区别。复合主键由多个字段共同组成,用于提高表的唯一性,而联合主键则是通过引用其他表中的主键字段来实现跨表关联的功能。文章通过具体的创建示例,说明了复合主键是单表内的多字段组合,而联合主键涉及多个表之间的引用逻辑。文章还提到,联合主键本质上是一个逻辑概念,而非实际存在。文章总结了这两种主键的基本概念和应用场景,帮助读者更好地理解MySQL的数据库设计原理。
复合主键:
create table index_test
(
a int not null,
b int not null,
c int not null,
d int null,
primary key (c, a, b)
);
(
a int not null,
b int not null,
c int not null,
d int null,
primary key (c, a, b)
);
即一个表的主键同时由多个字段共同组成,复合主键索引见【Mysql】复合主键的索引。
联合主键:
create table index_test_a
(
id int not null,
a int not null
primary key (id)
);
(
id int not null,
a int not null
primary key (id)
);
create table index_test_b
(
id int not null,
b int not null
primary key (id)
);
(
id int not null,
b int not null
primary key (id)
);
create table index_test_a_b
(
id int not null,
a_id int not null,
b_id int not null,
primary key (id)
);
(
id int not null,
a_id int not null,
b_id int not null,
primary key (id)
);
index_test_a_b表的id为表index_test_a和表index_test_b的联合主键,就是个逻辑概念
到此这篇关于Mysql复合主键和联合主键的区别的文章就介绍到这了,更多相关mysql复合主键和联合主键内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:当Mysql行锁遇到复合主键与多列索引详解MySQL 创建主键,外键和复合主键的语句
© 版权声明
文章版权归作者所有,未经允许请勿转载。