1

親テーブルの費用の代理として外部キーを設定していますか?

自然キーを表示するには、その親/参照テーブルに参加する必要があるためです。

しかし、参照テーブルの代理として外部キーを設定するのが最適な理由は何ですか。

4

1 に答える 1

2

自然キーでは不要な状況で JOIN が必要になるという意味では高価です (既に述べたように)。また、通常、自然キーはクラスタリングでうまく機能し、ひし形の依存関係を正しくモデル化するために必要になる場合があります。

一方、「より細い」代理キーを使用すると、スペースを節約し、更新を簡素化できます (特に、複数レベルの FK がある場合)。

どちらのアプローチも絶対に「優れている」わけではありません。妥協の問題です。

于 2012-06-05T08:45:29.787 に答える