【发布时间】:2021-04-01 21:43:05
【问题描述】:
在数据库课程的作业中,我要为图书馆管理系统做一个数据库设计。项目描述中有 2 个单独的部分我不明白。
首先,我们有不同的用户类型,称为库管理员 (lm) 和普通用户 (ru)。这两类用户也有不同的特点。比如ru.s只能看到自己的借阅信息,而lm.s可以看到所有用户的借阅信息。此外,ru.s 无权向系统添加书籍,而 lm.s 可以向系统添加新书籍。我的第一个问题是关于我刚刚列出的与授权相关的属性是否可以保留在数据库中。或者这些授权功能是否是在实现网站时需要为每种用户类型创建并添加到不同页面的功能?如果这些要在网站上确定,我如何确定没有 ru 发送过未经授权的查询?
我不明白的第二部分是,在保留俄罗斯的借阅信息的同时,我是否需要保留三个单独的信息,例如“借书日期”、“应归还图书日期”和“书的日期被带回来了”?因为每本书的借阅期限是固定的,设置为1个月。所以对我来说,只记录借书的日期似乎就足够了。因为这个日期加上1个月,已经可以算出还书的日期了。
此外,即使我认为我应该记录还书的日期,但当用户只是借书而尚未归还时,此信息将为空。据我所知,在数据库中保留空部分意味着糟糕的设计。所以我不明白如何解决这些问题,在此先感谢您的帮助。
【问题讨论】:
-
我们预计贷款会被退回。 null 没有任何问题,尤其是在预期比率为 1 的情况下。
标签: mysql sql database entity-relationship