兩個表如下:數據庫設計外鍵是在我的數據庫
[Employee] Table:
Id (Primary Key, Autoincrement)
FirstName
LastName
Status
[Status] Table:
Status (Primary Key)
狀態爲下列之一:「全職」「承包商」「終止」
應該如何[僱員] .STATUS參考[Status] .Status作爲外鍵?我看到這樣的方法有兩種:
- [僱員] .STATUS直接指向[狀態] .STATUS
- 我添加ID列[狀態]表中,並使其PK /自動增量。然後[Employee] .Status指向[Status] .Id。這意味着我必須進行連接才能獲取狀態文本。
其他表也可能引用狀態表。兩種方法之一是「正確的」做事方式還是設計問題?
選項2. maintanability更復雜的表格第三種選擇 - 爲下面回答說。 – RPM1984 2010-09-20 00:53:08
幾個小時前偶然討論過的同一個主題:[關係數據庫設計問題 - 代理鍵或自然鍵?](http://stackoverflow.com/questions/3747730/relational-database-design-question-surrogate -key-or-natural-key) – 2010-09-20 00:58:27
[主鍵的設計標準是什麼?](http://stackoverflow.com/questions/3632726/what-are-the-design-criteria-for-primary - 鍵) – APC 2010-09-20 01:03:51