一個簡單的數據庫設計問題一直在困擾着我一段時間,我想我會在這裏問。將所有貸款(插入貸款日期,更新返還日期)記錄存入一張表或兩張表(有歷史記錄)是否更好?
假設我有一個數據庫表,"Loan"
具有以下字段,
StudentIdentification, LoanDate, ReturnDate
此表用於跟蹤每一個誰已借出的東西(而不是在數據庫)的學生。 由於每個學生都可以貸款,返回和貸款再次(但並非沒有返回,貸款必須跟一個還貸款多次),複合主鍵是
used: StudentIdentifcation and LoanDate
是更好地存儲數據,這樣或代替具有2個表,
table 1: Loan (StudentIdentification, LoanDate)
table 2: LoanHistory (StudentIdentification, LoanDate, ReturnDate)
在這種情況下,貸款表的主鍵是
StudentIdentification
和LoanHistory表的主鍵是
StudentIdentification, LoanDate
每次學生返回時,「貸款」記錄被移動到「LoanHistory」表與ReturnDate更新(在交易完成)。
哪個更好?
哈哈,編程白癡**與訪問SO **,這是差異 –
真的,我的評論被刪除?主持人沒有注意到OP的用戶名實際上是「編程白癡」?男人,這些日子裏,每個人都很敏感。 –