在MySQL中不丢失旧费用

时间:2012-02-03 14:47:24

标签: mysql

我正在创建一个学生管理系统,我有3个表,学生,费用,student_fee,费用表包含费用金额,student_fee包含对student.studentid和fee.feeid的引用,以便每当学生付费他们的费用,studentid,feeid和paid_date将被插入student_fee表中。明年可以增加费用,我怎么能保留旧的付费记录而不会丢失并导致帐户出现任何问题

3 个答案:

答案 0 :(得分:2)

不要单独执行整个历史记录表,只需在student_fee_paid表中添加一列以显示付款金额...这样您仍然可以直接从中查询学生的整个历史记录,它将具有历史记录值一共...... ex:

Student  Fee_ID DatePaid    FeeAmount
X         1      1/1/2009   $25
X         1      1/1/2010   $25
X         1      1/1/2011   $30
X         1      1/1/2012   $35

否则它只会增加到一个更大的任务......如果你有30种不同的费用,并且费用计划金额有些变化而不是全部,那么......你可以保留你的“费用”表以反映任何“当前”的费用金额是,但是一旦支付,立即加盖金额....如果费率在年中变化,还有另一个麻烦/历史考虑...不要担心其他最小数据量存储会增加。

答案 1 :(得分:1)

创建付费表的历史记录。 StudentID,FeeID,DatePaid,AmountPaid

或生效日期费用表。

答案 2 :(得分:0)

复制表格feesstudent_fee以进行归档。

您可以使用SELECT INTO命令。

http://www.w3schools.com/sql/sql_select_into.asp