2012-05-28 67 views
1

可以說一個學生參加了一門特定的課程。他的總費用是25000美元(基於其他計算,如學費,雜費等)。數據庫事務 - 或者這是一個正常化問題?

現在,這讓我困惑。 我如何得到計算學生的總餘額。我應該:

  1. 減去他從總餘額(在我的表中的列)他每次支付時支付的金額。

  2. 不要有史以來修改任何列,但使用另一個名爲total_fee列的屬性。只需從我的tution_payment表中找到的每筆交易中支付的總金額,然後從total_fee中減去結果(這可以通過我的查詢完成)。另外請注意,我沒有在這裏使用total_balance。

我記得有人跟我說,

金融交易一般只插入

這是否意味着我以前的解決方案是正確的?目前,我使用後者,但認爲這是一個不準確的解決方案。

我不熟悉數據庫如何表示會計交易,所以任何幫助將不勝感激。

回答

3

通常情況下,會有一個包含事務的表。學生費用將被記入大學學分,並借記給學生。還款將被記入學生的學分。利息費用將歸功於大學。

這樣就不需要存儲餘額。您根據交易歷史記錄計算餘額。最大的優點是你可以解釋平衡;它不僅僅是一個存儲在數據庫中的數字,它還具有完整的歷史記錄。

+0

肯定會用雙重錄入會計模式。 (+1)任何其他方法最終都會讓您陷入麻煩,無法解釋或證明您的號碼。 –

+0

@Andomar - 你的意思是我沒必要在列中記錄餘額?我需要的是我可以總結的一個交易表格(通過視圖/查詢)以及可能的其他計算來獲得總餘額? – Arman

+0

@阿曼:是的,那正是我想說的 – Andomar