一般會建議第二種:
原因一:如您所述,這樣可以加FK
原因二:不同資料表會分散Lock,減少大家搶著Lock同一個資料表造成死結或逾時的機率
但如果需求比較簡單,資料量也不多,用第一種方法可能節省一點規劃資料表的時間啦
※ 引述《scaen (舞琴弄弦)》之銘言:
: 想請教各位先進
: 因為目前手上有一個非常龐大的校務系統要轉移
: 在多數Table內,皆有使用到代碼的方式表示值,
: 該代碼理所當然的會產生一對應的Table出來,來記錄代碼明細
: 由於現在已有同事的做法是將所有使用到代碼的欄位
: 全部整理到一個代碼表內,並給予一個大項分類欄位
: 所以在設計客戶端應用時,必須先去SELECT到該分類
: 由於代碼種類繁多,維護上真的看到很雜
: 想請教各位先進
: 若用原始的方式,將各種類代碼獨立成一個Code Table
: 要設計客戶端只需知道對到哪張Table即可
: 其他程式設計師維護或開發起來感覺會比較容易理解
: 設定FK的方式,可以確保資料的正確性(但似乎會消耗資源)
: 這兩種方法,在效能上以及給其他人員開發上,何種是比較推薦的呢?
: ps.代碼存放資料都不大
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.74.227.233