mysql授权 mysql联合主键和复合主键的区别?
mysql联合主键和复合主键的区别?
什么是复合主键?
所谓复合主键是指表的主键由多个字段组成
例如,
(
name varchar(19),
ID number,
value varchar(10),
primary key(name,ID)
]上面的name和ID字段的组合就是测试表的复合主键
这是因为名称字段可能有重复的名称,所以需要添加一个ID字段以确保记录的唯一性
通常,字段长度和主键数越短越好
什么是联合主键?
(主键原则上是唯一的。不要被独特的价值观所困扰。)
顾名思义,多个主键组合形成一个主键组合
一个简单的例子
主键a和主键B形成一个联合主键
主键a和主键B的数据可以完全相同(麻烦,没关系)。由主键A和主键B组成的联合主键是唯一的。
在下面的示例中,主键a的数据是1,主键B的数据是1。实际上,联合主键是11,这是唯一的值。绝对不允许使用唯一值11。(这是多对多关系)
主键a数据主键B数据
1 1
2 2
3 3
主键a和主键B的联合主键值最大,也就是说
11
12
13
21
22
23
31
32
33
我将从子数据库和子表存在的问题以及如何解决这些问题来回答这个问题。。
没有办法避免这个问题,通常拆分SQL,使用多个查询,然后使用结果分别检查结果
!我们可以使用TCC编程模型来确保两个事务可以正确提交,但这种代码入侵方式相对较重!您还可以使用基于消息的数据一致性保证
!1. 使用多线程分别查询多个节点,然后汇总!
mysql授权 mysql设置主键自增 mysql创建函数例子
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。