联合主键和复合主键区别
来源:互联网 发布:数组发筛选100以内素数 编辑:程序博客网 时间:2024/06/15 12:23
什么是数据表的复合主键
所谓的复合主键 就是指你表的主键含有一个以上的字段组成
比如
create table test
(
name varchar(19),
id number,
value varchar(10),
primary key (name,id)
)
上面的name和id字段组合起来就是你test表的复合主键
它的出现是因为你的name字段可能会出现重名,所以要加上ID字段这样就可以保证你记录的唯一性
一般情况下,主键的字段长度和字段数目要越少越好
联合主键
什么是联合主键?
(主键原则上是唯一的,别被唯一值所困扰。)
顾名思义就是多个主键联合形成一个主键组合
一个简单的例子
主键A跟主键B组成联合主键
主键A跟主键B的数据可以完全相同(困扰吧,没关系),联合就在于主键A跟主键B形成的联合主键是唯一的。
下例主键A数据是1,主键B数据也是1,联合主键其实是11,这个11是唯一值,绝对不充许再出现11这个唯一值。(这就是多对多关系)
主键A数据 主键B数据
1 1
2 2
3 3
主键A与主键B的联合主键值最多也就是
11
12
13
21
22
23
31
32
33
所谓的复合主键 就是指你表的主键含有一个以上的字段组成
比如
create table test
(
name varchar(19),
id number,
value varchar(10),
primary key (name,id)
)
上面的name和id字段组合起来就是你test表的复合主键
它的出现是因为你的name字段可能会出现重名,所以要加上ID字段这样就可以保证你记录的唯一性
一般情况下,主键的字段长度和字段数目要越少越好
联合主键
什么是联合主键?
(主键原则上是唯一的,别被唯一值所困扰。)
顾名思义就是多个主键联合形成一个主键组合
一个简单的例子
主键A跟主键B组成联合主键
主键A跟主键B的数据可以完全相同(困扰吧,没关系),联合就在于主键A跟主键B形成的联合主键是唯一的。
下例主键A数据是1,主键B数据也是1,联合主键其实是11,这个11是唯一值,绝对不充许再出现11这个唯一值。(这就是多对多关系)
主键A数据 主键B数据
1 1
2 2
3 3
主键A与主键B的联合主键值最多也就是
11
12
13
21
22
23
31
32
33
0 0
- 联合主键和复合主键区别
- 联合主键和复合主键区别
- 联合主键和复合主键区别
- 联合主键 复合主键
- 复合主键与联合主键
- 复合主键与联合主键
- 13、复合主键映射(联合主键)
- 复合主键映射(联合主键) .
- JPA复合主键另一种实现--联合约束
- MyBatis 组和主键 和复合主键
- EJB3主键类和复合主键
- hibernate的主键和复合主键
- MSSQL删除主键和创建联合主键
- 对逻辑主键、业务主键和复合主键的思考
- 对逻辑主键、业务主键和复合主键的思考
- 复合主键
- 复合主键
- 复合主键
- Red Hat linux 6.5 学习使用笔记《四》bash特性详解
- c#参数数组
- 关于MYSQL优化的一些个人见解
- POJ 2104 K-th Number 归并树
- MYSQL 常用语句
- 联合主键和复合主键区别
- JavaScript中对非Boolean型变量进行if判断
- 第十五周项目3-B-树的基本操作
- do notation
- udp服务器、客户端
- ThinkPHP整合微信支付之Native 扫码支付 模式二
- 关于缓存的优化以及memcache的优点个人总结
- 破解excel密码保护
- mysql基础---查询数据(五)(重点)