假设我有一个联结表来解决两个表之间的多对多关系。我的联结表也有自己的“方法”列来描述关系。
通常,我会创建[a],[b]和[method]的复合主键(该方法需要成为使行唯一的一部分),但我的问题是[method]字段可以是空值。因此我无法将其添加到主键。
所以我所做的就是创建一个独特的索引:
ALTER TABLE A_B ADD UNIQUE INDEX `Unique` (`a`, `b`, `method`);
该表没有主键。这是一件好事还是我需要采取不同的做法?
答案 0 :(得分:1)
使用主键并不是确保记录唯一性的唯一方法。您可以实施一个独特的约束来完成所需的工作。