データベースにいくつかの外部キーを追加しただけで、通常、すべての外部キーは識別されていません。違いがわからなかったので、識別を気にしたことがなく、データベースは常に十分に機能しているように見えました。
今、私はこのデータベースを適切に作成することを決定し、識別および非識別の外部キーを作成しました。結合を行うときにパフォーマンスに違いはありますか?
ありがとう
データベースにいくつかの外部キーを追加しただけで、通常、すべての外部キーは識別されていません。違いがわからなかったので、識別を気にしたことがなく、データベースは常に十分に機能しているように見えました。
今、私はこのデータベースを適切に作成することを決定し、識別および非識別の外部キーを作成しました。結合を行うときにパフォーマンスに違いはありますか?
ありがとう
@billKarwinによる答えは本当に良いです。1 つだけ観察事項を追加します。
識別関係と非識別関係は論理構造です。彼らは基礎となるビジネス ドメインをモデル化します -この質問を参照してください(どこにでもいる @billKarwin も回答しています)。このような論理構造を使用する理由は、データベースを理解しやすくするためです (したがって、維持、拡張など)。データベースを「高速」にすることではありません。