ホームページ >データベース >mysql チュートリアル >単一の列がデータベース内の複数の外部キーとして機能できますか?
1 つの列を複数の外部キーとして参照できますか?
データベース管理の領域では、接続したい状況に遭遇することがあります。外部キーを使用して異なるテーブルからデータを取得します。しかし、1 つのテーブルの 1 つの列を他の複数のテーブルの外部キーとして参照する必要がある場合はどうなりますか?
課題
次のシナリオを考えてみましょう。 item_types と対応する item_id を含む、解析された PDF ドキュメントからのデータを含む pdf_created というテーブルがあります。この item_id 列を、product、service、header などの他のいくつかのテーブルで外部キーとして参照したいと考えています。
解決策
次のことに注意することが重要です。複数のテーブルの列を参照する外部キー制約を作成することはできません。ただし、制約なしで item_id 列を外部キーとして使用することで、外部キー関係を作成することはできます。
外部キーは、本質的に、別のテーブルの主キーと一致する値であり、レコード間の結合を可能にします。外部キー制約がなくても、item_id フィールドを使用して、pdf_created 内のレコードを製品、サービス、およびヘッダー テーブル内の対応するレコードに接続できます。
したがって、複数の外部キー制約を作成することはできませんが、同じ列であっても、この手法を利用してデータベース内の他のレコードを参照できます。
以上が単一の列がデータベース内の複数の外部キーとして機能できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。