既然说到数据库设计,那么不得不值得一提的就是我们沿用已久的图书管理系统数据库设计了。那么对于具体的设计分析而言,小编就带领大家来看看具体的吧!
那么首先技术人员需要分析的就是需求分析:
1、需求分析
①流程
读者到图书馆借阅处查询图书,首先会看看是否有满足读者要求的图书。如果有读者想要借阅某本图书,先可以查看图书馆是否有该图书,如果图书馆有该书在则可以借给读者,并登记相关信息,如果图书馆并没有该图书,则通知读者不在馆内,即读者的要求不能满足。
②功能 实现图书的查询,借阅,归还功能
图书管理需要针对书籍、读者、员工以及查询和借阅信息进行有效的管理。此系统在功能上要实现信息查询、借阅图书(包括借阅日期、归还日期和借阅时间)等功能。
读者来到图书借阅处,若读者是来借书的,就会给出图书的相关信息,若图书馆内有该图书,则管理员就会查询该图书是否已经借出,若该书已经借出则系统借书过程结束,若该书没借出的管理员登记相关信息之后将书借给读者;若读者将要借的书不存在,则这个过程结束,若读者不是来借书的,则看读者是否来还书的,若是来还书的,则看他还书的时间是否超过规定的时间,如果超过规定的时间,则要求读者赔偿超时费,若没有超时,则看他所借的书是否丢失,若丢失则赔偿,图书管理员登记相关信息,若书没有丢失,则看书是否有损坏,若已经损坏则要求读者赔偿,然后管理员登记相关信息,若书既没有丢失,也没有损坏则管理员登记相关信息;若读者既不是来借书的,也不是来还书的,则这个过程结束。
2、关系模式
图书信息(图书编号,书名,类别,库存) 借阅信息(借书时间,归还时间,图书编号,) 借阅人(图书编码,姓名,学号) 借阅书籍(图书编号,书名) 归还书籍(图书编号,书名) 管理信息(图书编号,存放位置) 员工(员工编号,姓名)
3、函数依赖
{图书编号→书名,书名→类别,图书编号→类别}(传递依赖);
{(借书时间,归还时间)→图书编号,图书编号→借书时间,图书编号→归还时间}(全函数依赖)
{学号→姓名,(姓名,学号)→图书编号,学号→图书编号}(部分函数依赖){图书编号→存放位置}
{员工编号→姓名}