首页 文章

如何设计支付数据库?

提问于
浏览
-1

我正在写一个控制学校的程序 . 它更像是会员订阅模式 . 学生申请课程,并且必须按照学校日历定义的特定时间的其余时间按月支付费用 .

根据每个案例,某些特定学生可以减少题字或月费 . 一旦学生订阅课程,它将是经常性付款,学生可以进行部分付款 . 此外,学生可以退出,永远不会回来 .

我带来了像 table 这样的东西:

STUDENT
+id
+name

COURSE
+id
+name
+inscription_fee
+monthly_fee

SCHEDULED_PAYMENTS
+id
+student_id
+description
+amount

-LEDGER
+id
+student_id
+course_id
+amount

但是当我想知道学生支付了什么,月费是否到期等时,我最终得到了长时间复杂的查询 .

所以我想问,这是设计付款数据库的正确方法吗?或者,还有更好的方法?

2 回答

  • 0

    我想你需要的只是你的学生桌和你的课程表,然后是两者之间的链接表,以显示哪个学生正在学习什么课程

    学生证,姓名

    课程ID,姓名,费用,monthly_fee

    Student_course Student_id Course_id

    然后

    select *
    FROM student
    JOIN student_course on student.id = student_course.student_id
    JOIN course on course.id = student_course.coruse_id
    where student.name = ?
    

    然后,您每个 class 都有月费和费用

  • -1

    我将分类帐和预定付款作为1个表格 . 付款到期时,如果付款,则将其标记为已付款 . 但正如@Marrgall指出的那样,确实没有正确的方法可以做到这一点,并且你在现场找到了很多复杂的问题 . 所以你也可以习惯它 .

相关问题