我需要有关数据库设计的建议。
我目前正在为一所学校设计一个 DBMS。在设计课程和考试表之后,现在我来到了费用模块。
这是我到目前为止所做的。我创建了 4 个表,如下所述:
fee_type
-------------
fee_type_id PRIMARY KEY
fee_type TYPE OF FEE (MONTHLY, WEEKLY,ANNUAL,ONE TIME)
fees
-------------
fees_id PRIMARY KEY
fee_heading (eg. TUITION FEE,LAB FEE, HOSTEL FEE,SPORTS FEE)
amount (CURRENT CHARGE OF THE FEE, could change with time)
class_id (GRADE ID, GARDE 4, GARDE 5, GRADE 6)
fee_type TYPE OF FEE (MONTHLY, WEEKLY,ANNUAL,ONE TIME)
archived (FEE HEADING ARCHIVED FOR USE)
fee_student
-------------
fee_id (RELATED fee_id (FK))
student_id (RELATED student_id(FK))
effective_from (DATE FROM WHEN THE FEE APPLIES TO THE STUDENT)
amount (CHARGE AT THE TIME OF FEE ASSIGNMENT (applicable to particular student))
discount (DISCOUNT HONORED TO STUDENT IF ANY)
status (ACTIVE OR INACTIVE)
transaction
---------------
id PRIMARY KEY
date (date and time when transaction takes place)
fee_id (PAYMENT FOR)
student_id ({TO BE} PAID BY)
amount ( AMOUNT PAID/APPLIED)
description
cr ( yes or no)
dr (yes or no)
remarks
交易表将存储学生的所有付款以及为该学生收取的所有金额。
我正在考虑根据费用类型在交易表中存储向学生收取的金额。这意味着,如果费用是 WEEKLY 类型,每周一条记录将自动添加到交易表中,并且金额标记为借方(或贷方,等等)。
希望这是有道理的。
我在设计数据库的正确道路上吗?
您的意见和建议将不胜感激。
谢谢
比什努