リレーショナル データベースで複数のテーブルへの外部キーは可能ですか?

DDD
リリース: 2024-10-24 03:58:30
オリジナル
760 人が閲覧しました

Is a Foreign Key to Multiple Tables Possible in Relational Databases?

複数のテーブルの 1 つへの外部キー: 可能ですか?

リレーショナル データベースでは、テーブル間の関係を確立するために外部キーが使用されます。通常、あるテーブルの外部キーは、別のテーブルの主キーを指します。しかし、疑問が生じます: 外部キーは複数のテーブルの 1 つを参照できますか?

答え: いいえ

外部キー制約は常に 1 つの親テーブルのみを参照します。これは、複数の可能なテーブルの 1 つを指す外部キーを定義できないことを意味します。この動作は MySQL と PostgreSQL の両方で同じです。

ポリモーフィック リレーションシップの影響

ポリモーフィック リレーションシップでは、テーブルが他のいくつかのテーブルの 1 つとリレーションシップを持つことができます。示されている例では、「images」テーブルは、「部下」または「製品」の 2 つのテーブルのいずれかと関係があります。

このような場合、以下を指す外部キーを直接作成することはできません。 「部下」か「商品」か。代わりに、関係を確立するには結合テーブルを明示的に定義する必要があります。結合テーブルには「従属」と「製品」の両方への外部キーが含まれており、「画像」テーブルには結合テーブルを参照する外部キーがあります。

追加リソース

このトピックをさらに詳しく調べるには、次のリソースを検討してください:

以上がリレーショナル データベースで複数のテーブルへの外部キーは可能ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!