複数の従業員テーブルにわたる外部キー制約
この記事では、単一データベース内の複数の従業員テーブル (employees_ce およびemployees_sn) の主キーにリンクする外部キー関係を控除テーブルに作成する可能性について検討します。
この課題は、それぞれ独自の主キー (empid) を持つ 2 つの異なる従業員テーブルemployees_ce とemployees_sn があることから生じます。 目標は、両方の主キーを参照する外部キーを演繹テーブルに作成することです。
employees_ce とemployees_sn のデータ構造、および控除テーブル内の意図された外部キー参照を示すデータセットの例が示されています。
最適なデータベース設計
最も効果的な解決策は、より正規化されたアプローチを使用してデータベースを再構築することです。 ce 従業員と sn 従業員用に別々のテーブルを作成するのではなく、一意の employees
フィールドを主キーとして使用して、単一の統合された id
テーブルを作成する必要があります。
既存の employees_ce
テーブルと employees_sn
テーブルは、従業員固有の属性を含む子テーブルとしてリファクタリングできます。 どちらにも、メインの id
テーブルの employees
フィールドを参照する外部キーが含まれます。
この統合されたアプローチにより、控除テーブル内の複数の外部キー参照が不要になり、データベース スキーマが簡素化され、データの整合性が向上します。 結果として得られる構造は、より効率的で管理が容易になります。
以上が控除テーブルに、別の従業員テーブルの複数の主キーを参照する外部キーを含めることはできますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。