您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 数据库设计图书管理系统
数据库设计—图书馆管理系统班级:计算机科学与技术1班小组成员:金艳20124077.王苗苗20124096刘菲菲20124084数据库设计—学校图书管理系统《数据库系统概论》课程的学习,其主要的目标是能利用课程中学习到的数据库知识与技术较好地开发设计出数据库应用系统,去解决各行各业信息化处理的要求。本实验主要在于巩固学生对数据库的基本原理和基础理论的理解,掌握数据库应用系统的设计开发的基本方法,进一步提高学生的综合运用所学的知识能力。为了使数据库的应用系统开发设计合理、规范、有序、正确、高效进行,现在广泛采用的是工程化6阶段开发设计过程与方法,它们是需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计等阶段。我们按照以上几点开发了学校图书管理系统数据库。需求分析阶段1.功能分析图书馆管理信息系统需要完成功能主要有:在图书管理系统中,管理员为每个读者建立一个账户,账户内存储读者个人的详细信息,并依据读者类别的不同给每个读者发放借书卡(提供借书卡号、姓名、部门或班级等信息)。读者可以凭借书卡在图书馆进行图书的借、还、续借、查询等操作,不同类别的读者在借书限额、还书期限以及可续借的次数上要有所不同。借阅图书时,由管理员录入借书卡号,系统首先验证该卡号的有效性,若无效,则提示无效的原因;若有效,则显示卡号、姓名、借书限额、已借数量、可再借数量等信息,本次实际借书的数量不能超出可再借数量的值。完成借书操作的同时要修改相应图书信息的状态、读者信息中的已借数量、在借阅信息中添加相应的记录。归还图书时,由管理员录入借书卡号和待归还的图书编号,显示借书卡号、读者姓名、读书编号、读书名称、借书日期、应还日期等信息,并自动计算是否超期以及超期的罚款金额,若进行续借则取消超期和罚款等信息;若图书有损坏,由管理员根据实际情况从系统中选择相应的损坏等级,系统自动计算损坏赔偿金额。完成归还操作的同时,修改相应图书信息的状态、修改读者信息中的已借数量、在借书信息中对相应的借书记录做标记、在还书信息中添加相应的记录。图书管理员不定期地对图书信息进行添加、修改和删除等操作,在图书尚未归还的情况下不能对图书信息进行删除。也可以对读者信息进行添加、修改、删除等操作,在读者还有未归还的图书的情况下不能进行删除读者信息。系统管理员主要进行图书管理员权限的设置、读者类别信息的设置、图书类别的设置以及罚款和赔偿标准的设置、数据备份和数据恢复等处理。2.处理对象读者:读者编号,姓名,性别,所在单位,读者类型,类别编号,办证日期,借书总数管理员:管理员编号,姓名,性别,住址,权限,登录口令,电话出版社:出版社名,出版社编号,传真,E-mail,电话馆藏图书:图书条形码号,书号,图书名称,作者,出版社,单价,入库时间,入库总数,分类,出版日期借阅信息:书号,读者编号,图书名,作者,借阅日期,还书日期,借书期限,超过时间,罚金.借阅历史信息:书号,读者编号,图书名,作者,借阅日期,还书日期.,罚款信息:读者编号,书号,图书名,借阅日期,还书日期,借书期限,超过时间,罚款金额,处理状态,管理员编号管理—图书:(删除图书,查询图书,修改图书,添加图书)管理—读者:(录入新读者,删除读者,修改读者)3.数据流程图数据流图查阅图书管理信息读取图书证号读取图书条形码是否超期是否超过4本借书拒借丢失罚款还书修改图书信息修改读者信息刷卡否是扫描条形码否是第一层数据流图第二层数据流图图书管理员读者信息管理系统维护信息统计图书信息管理图书借还管理系统管理员图书管理员图书管理员图书管理员读者信息读者类别统计数据统计结果图书馆借还信息图书信息图书查询结果图书类别图书借阅信息图书信息图书状态罚金标准统计项信息已借数有效读者信息图书管理系统读者管理员读者信息查询信息借阅信息图书信息管理员信息第三层数据流图(1)(2)录入新读者修改读者删除读者接收分析数据读者类别表读者信息表图书管理员读者信息信息统计图书借阅管理新读者数据待修改数据待删除数据有效读者信息修改读者信息读者借阅信息已借读有效读者信息(1)管理员—管理—读者(3)借书管理图书状态处理读者已借数处理接收分析数据续借管理还书管理计算罚金信息统计用户信息表借书信息表还书信息表罚金类别表图书管理员图书借还信息借书日期借书信息预借信息借书信息操作员姓名已借数图书信息图书状态读者信息借阅状态共借数已还数在库状态操作员姓名借书记录状态违规状态图书借阅信息还书信息罚金金额罚金标准(3)借还书及罚款情况数据流图图书管理员图书类别表接收分析数据添加图书修改图书删除图书查询图书图书信息表图书借阅管理信息统计图书管理员图书类别图书信息新图书信息待修改信息待删除信息图书查询条件有效图书信息修改的图书信息删除的图书信息图书状态图书查询结果图书状态图书信息统计项信息(2)管理员—管理—图书读者信息表图书信息表预还信息概念结构分析1.任务与目标(1)选择中层数据流为切入点,通常选择实际系统中的子系统;(2)设计分E-R图,即各子模块的E-R图;(3)生成初步E-R图,通过合并方法,做到各子系统实体、属性、联系统一;(4)生成全局E-R图,通过消除冲突等方面。2.阶段结果分E—R图(1)管理员—管理—图书事物规则:一本图书可以被多个图书管理员管理(1:n)一个图书管理员可以管理多本图书(1:n)(2)读者—借还—图书管理员管理图书mn读者借还图书mn事物规则:一个读者可以借还多本图书(1:n)一个图书可以被多个读者借还(1:n)(3)管理员—管理—读者事物规则:一本图书管理员可以管理多个读者信息(1:n)一个读者信息可以被多个图书管理员管理(1:n)(4)管理员—罚款—读者事物规则:一个图书管理员可以罚款多个读者信息(1:n)一个读者信息只能被一个图书管理员罚款(1:n)(5)图书—出版—出版社事物规则:一个出版社可以出版多本图书(1:n)一个图书只能被一个出版社(1:1)读者罚款管理员n1读者管理管理员nm图书出版出版社1n总E—R图合并各分E-R图,消除属性冲突、命名冲突、结构冲突等三类冲突,得到初步E-R图,再消除不必要冗余,得到的基本E-R图如下所示:各E-R图各实体的属性如下所示:读者:(读者编号,姓名,性别,所在单位,读者类型,借书总数)管理员:(管理员编号,姓名,性别,权限,登录口令,电话)出版社:(出版社名,出版社编号,传真,E-mail,电话,地址)书籍:(图书条形码号,书号,图书名称,作者,出版社,单价,入库时间,入库总数,分类,出版日期)各E-R图中联系的属性如下所示:出版:(出版社名,出版社编号,书号,图书名称)书籍出版借还地址E-mail传真出版社编号出版社出版社名电话书号分类作者入库总数出版社入库时间书名出版日期单价读者借阅日期归还日期罚款管理管理员读者编号读者类型姓名所在单位借书总数性别管理管理员编号登录口令性别电话1nnmmnmnn1删除图书罚款金额处理状态添加图书是否在馆录入新读者删除读者修改读者修改图书查询图书罚金类别姓名借还:(书号,读者编号,图书名,借阅日期,还书日期.)罚款:(读者编号,书号,管理员编号,图书名,借阅日期,还书日期,借书期限,超过时间,罚款金额,处理状态,罚金类别)管理—图书:(管理员编号,书号,删除图书,查询图书,修改图书,添加图书)管理—读者:(管理员编号,读者编号,录入新读者,删除读者,修改读者)逻辑结构分析逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。具体内容包括数据组织(将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式设计)、数据处理(画出系统功能模块图)两大任务。1.将E-R图转换为关系模型实体型转换为关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体间的联系则有以下不同的情况:一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为n端实体的码。一个1:1联系可以转换为一个独立的关系模式,也可以与任意一端对应的关系模式合并。三个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合具有相同码的关系模式可合并。由于读者类别与读者、馆室与图书的联系方式是1:n(一对多),可以将其之间的联系与n端实体读者、图书合并,管理员与图书之间的维护联系也是1:n(一对多),同样也将其之间的联系与n端实体合并,而读者与图书之间的借阅和归还联系方式则是n:m(多对多),这样要把它们之间的联系转化为独立的关系模式,读者与管理员之间的罚款联系是m:n(多对多),将其联系也转化成独立的关系模式,具体的基本E-R图向关系模型的转化如下:读者(读者编号,姓名,性别,所在单位,读者类型,借书总数)管理员(管理员编号,姓名,性别,权限,登录口令,电话)出版社(出版社名,出版社编号,传真,E-mail,电话,地址)书籍(图书条形码号,书号,图书名称,作者,出版社,单价,入库时间,入库总数,分类,出版日期)出版(出版社名,出版社编号,书号,图书名称)借还(书号,读者编号,图书名,借阅日期,还书日期.)罚款(读者编号,书号,管理员编号,图书名,借阅日期,还书日期,借书期限,超过时间,罚款金额,处理状态,罚金类别)管理—图书(管理员编号,书号,删除图书,查询图书,修改图书,添加图书)管理—读者(管理员编号,读者编号,录入新读者,删除读者,修改读者)2.模型优化数据库逻辑设计的结果不是唯一的。为了进一步提高数据库应用系统的性能,还应该根据应用需要适当的修改、调整数据模型的结构,这就是数据模型的优化。1.读者关系模式存在非主属性对主属性的部分函数依赖读者(读者编号,姓名,性别,所在单位,读者类型,借书期限,借书总数)函数依赖有:(读者编号,读者类型)——借书总数读者类型——借书总数(读者编号,读者类型)——借书期限读者类型——借书期限所以:关系模式读者不属于2NF,解决办法将关系模式读者分解为:读者(读者编号,姓名,性别,所在单位)读者类型(学生,教职工,借书总数,借书期限)2.关系模式不存在非主属性对主属性的部分函数依赖,也不存在传递函数依赖,已经达到了3NF,但是借还关系模式、罚款关系模式中存在着一些数据冗余,现将两个关系模型进行合并,消除冗余,优化为:借还(书号,读者编号,图书名,管理员编号,图书名,借阅日期,还书日期,借书期限,罚款金额,处理状态,罚金类别)经过模式优化得到关系模式:读者(读者编号,姓名,性别,所在单位)读者类型(学生,教职工,借书总数,借书期限)管理员(管理员编号,姓名,性别,权限,登录口令,电话)出版社(出版社名,出版社编号,传真,E-mail,电话,地址)书籍(图书条形码号,书号,图书名称,作者,出版社,单价,入库时间,入库总数,分类,出版日期)出版(出版社名,出版社编号,书号,图书名称)借还(书号,读者编号,图书名,管理员编号,图书名,借阅日期,还书日期,借书期限,罚款金额,处理状态,罚金类别)管理—图书(管理员编号,书号,删除图书,查询图书,修改图书,添加图书)管理—读者(管理员编号,读者编号,录入新读者,删除读者,修改读者)PFF关系模式:读者(读者编号,姓名,性别,所在单位)管理员(管理员编号,姓名,性别,权限,登录口令,电话)出版社(出版社名,出版社编号,传真,E-mail,电话,地址)3.设计用户子模式将概念模型转换为全局逻辑模型后,还应该根据局部应用需求,结合DBMS的特点,设计用户模式的子模式。我们利用视图这一功能设计符合局部用户需要的用户模式小结:1.这次课程设计使我熟悉了系统设计的整体步骤。系统设计大体可分为需求分析、概念设计、逻
本文标题:数据库设计图书管理系统
链接地址:https://www.777doc.com/doc-6242156 .html