首頁 > 資料庫 > mysql教程 > 外鍵可以同時引用兩個單獨表中的主鍵嗎?

外鍵可以同時引用兩個單獨表中的主鍵嗎?

Linda Hamilton
發布: 2025-01-11 08:03:45
原創
1066 人瀏覽過

Can a Foreign Key Reference Primary Keys from Two Separate Tables Simultaneously?

跨多個表的外鍵引用:結構化方法

本文解決了在扣除表中建立外鍵的挑戰,該外鍵引用「employees」資料庫中的employees_ce 和employees_sn 表中的主鍵。 employees_ce 和employees_sn 都有唯一的主鍵。 是否可以直接使用雙外鍵引用?

高效率的解決方案:分層設計

最佳解決方案涉及重組資料庫以反映分層員工結構:

  1. 員工層級結構: 將員工視為父類,將員工_ce 和員工_sn 作為子類別。

  2. 資料庫表設計:建立三表結構:

    • 員工(id、姓名、...): 包含常見員工屬性的中心表。 id 是主鍵。
    • employees_ce (id, ce_specific_data, ...): 儲存特定於employees_ce 的資料。 id 是引用 employees.id 的外鍵。
    • employees_sn (id, sn_specific_data, ...): 儲存特定於employees_sn 的資料。 id 是引用 employees.id 的外鍵。
  3. 外鍵關係:建立外鍵約束:

    • employees_ce.id參考文獻employees.id
    • employees_sn.id參考文獻employees.id
  4. 扣除表: deductions 表現在將有一個外鍵 employee_id,引用 employees.id 欄位。

這種分層模型可確保引用完整性並有效管理不同員工類型的資料。 它避免了嘗試直接雙外鍵引用的複雜性和潛在的不一致。 deductions 表中的單一外鍵提供了到相關員工記錄的清晰且明確的連結。

以上是外鍵可以同時引用兩個單獨表中的主鍵嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板