先日、データベース設計で、ナチュラルキーの組合せを使った複合主キーと、その代替となるサロゲートキーのどちらを使うか、という話を書きました。 複合主キーを避けるべき理由 - 虎塚 月末までには、改めて考えを整理するつもりでした。しかし、残念ながら、今の自分の知識ではムリそうです。そこで、考えたことを少しずつ出力することにしました。 この問題について考えるべき(だった)こと 前回の記事に足りなかった観点が3つあります。 データベースの論理設計と物理設計を分ける 複数ある要素の一部にだけ言及していると自覚する すべては程度問題である これらを1つずつ考えてみます。 1. 論理設計と物理設計を分ける まず、データベースの論理設計と物理設計を分けて考える必要がありました。非常に、基本的なことですが・・・ 論理設計で、ユニーク制約が必要なキーと、行を一意に特定するキー(候補キー)を特定します。もちろん
![メモ: 複合主キーを云々いう前に足りなかったこと - 虎塚](https://cdn-ak-scissors.b.st-hatena.com/image/square/aac8474ec1e8cfa27c733ee9728295eef3dca986/height=288;version=1;width=512/https%3A%2F%2Fcdn-ak.f.st-hatena.com%2Fimages%2Ffotolife%2Ft%2Ftorazuka%2F20110730%2F20110730053921.jpg)