【发布时间】:2012-08-11 17:21:31
【问题描述】:
我想为 InnoDB MySQL 表创建类似 MyISAM 的行为。我想要一个复合主键:
主键(id1,id2)
其中 id1 根据 id2 的值自动递增。使用 InnoDB 完成此任务的最佳方法是什么?
+----------+-------------+--------------+
| id1 | id2 | other_column |
+----------+-------------+--------------+
| 1 | 1 | Foo |
| 1 | 2 | Bar |
| 1 | 3 | Bam |
| 2 | 1 | Baz |
| 2 | 2 | Zam |
| 3 | 1 | Zoo |
+----------+-------------+--------------+
【问题讨论】:
-
“id1 根据 id2 的值自动递增的位置”是什么意思?
-
查看发布的示例数据。这就是我想要的行为。
-
你可以做很多工作来实现这样的目标。这将是缓慢的片状和脆弱的。这应该是两个表,或单个值键。
-
所以id2是手动插入的,id1只有在发生主键冲突时才会递增?
-
你为什么想要这种行为?