(我承認這很可能是重複的,但我不能找到基於搜索任何答案)一個表該隱連接兩個表
我有一些信息的表,可以在用戶加入,或在一家公司。有三種方法可以解決此問題:
- 爲表提供join_user_id列和join_company_id列,並且只填寫其中一個。
- 創建一個join_id列和一個joins_with_table列
- 複製主表,以便有兩個版本,一個只有一個join_user_id,另一個只有一個join_company_id。
我正在排除3因爲它不幹。我的問題是,哪些是真正的標準化設計(或者都不是)?
我該如何處理以下缺陷: 1.留下一堆容器,如果第三張桌子出現時不會優雅地增長,以及如何簡潔地加入? 2.我如何執行外鍵約束?我如何簡潔地加入?
也看到http://stackoverflow.com/questions/13749525/relational-database-design-multiple-user-types/13752304#13752304 –