《图书馆管理系统数据库课程设计.docx》由会员分享,可在线阅读,更多相关《图书馆管理系统数据库课程设计.docx(27页珍藏版)》请在第一文库网上搜索。
1、期由2孽虎数据库原理课程设计说明书图书馆管理系统院、部:计算机与信息科学学院学生姓名:专业:班级:完成时间:1需求分析11.1 任务概述1I .1.1目标1II .2用户特点11.2 需求规定11.2.1 对功能的规定112.2对性能的规定21.2.3 运行环境的规定2124用例模型图213系统功能设计图22数据库的概念结构设计43数据库的逻辑结构设计64数据库的物理结构设计75系统的设计与实现85.1 数据库的实施85.2 数据库的连接106功能测试146.1 测试内容146.2 登录测试146.3 图书信息管理测试167课程设计总结21参考文献22附录1数据库原理课程设计任务书23附录2数
2、据库原理课程设计成绩评定表251需求分析1.1 任务概述1.1.1 目标系统面向中小型图书馆,用户群体为图书馆管理员。a.能够输入图书的综合情况和进行新书入库、现有图书信息修改以及删除;b.能够进行借阅历史的查询功能;1.1.2 用户特点用户可以使用装有windows操作系统的电脑的基本功能,并会使用数据库创表。1.2 需求规定1.2.1 对功能的规定(1)能够输入图书的综合情况和进行新书入库、现有图书信息修改以及删除。(2)能够实现对读者档案的查询和编辑管理。(3)能够进行借阅历史的查询功能具体为:密码设置:登录系统后进行操作。资料维护:为了存放图书、读者案的全部数据,本系统将每一本图书和每
3、位读者的信息进行管理。系统维护包括对各种表记录的修改、删除、添加等操作。系统查询:可以按图书编号、借阅证编号等相关信息进行查询。系统管理:进行会员管理、数据备份等。报表统计:包括统计图书信息、读者信息、借阅信息和罚款信息等。其它操作:包括修改密码、添加用户、页面设置等。1.2.2 对性能的规定系统安全、可靠、功能齐全、操作方便、界面友好、易于维护和扩充。1.2.3 运行环境的规定环境:兼容当前主流操作系统Windows10/87XPvista等。1.2.4 用例模型图OO查询读者信息=.1F查询用书信息O:O:O添加.信室O./修改读者信息c5删除读者信息1j查询借阅信息管理员困书信息管理.、
4、添加图书信息-删除图书信息憎阅信息管理.AOJJ修改图书信息删除借阅信息添加借阅信息图书管理系统用例模型图13系统功能设计图图书管理系统选择三层体系结构来实现。如图所示。系统由5个节点组成,应用服务器负责整个系统的运行总体协调工作,数据库服务器负责数据库的管理。业务管理、查询管理以及维护管理分管各个模块的内容。读者管理图书管理系统P借阅信息管理一图书管理,修改读者信鼠查询读者信息删除读者信鼠添加读者信价查询借阅信息删除借阅信短添加借阅信息添加图书信翁修改图书信辟修改图书信二删除图书信息图2功能模块图图书管理系统主要实现图书的借阅,有两个主要实体,图书和读者。此系统中为员工信息涉及一个名为dbj
5、ibrary的数据库,数据库中包含图3系统总E-R图管理员,田向史)亲矽二)图4图书实体E-R图图5读者实体E-R图3数据库的逻辑结构设计图书信息表(图书编号,图书名称,IBSN号,图书出版时间,作者)顾客表(读者编号,读者名称,系别,班级)借阅表(借阅编号,图书编号,借出日期,归还日期,读者编号)管理员表(管理员编号,用户名,密码)表1admin管理员表表中列名数据类型可否为空说明idintnotnu11(主键)管理员编号Adminjiamevarchar(20)notnu11管理员姓名Admin_pwdvarchar(20)notnu11登录密码表2reader读者表表中列名数据类型可否为
6、空说明r_idintnotnu11(主键)读者编号r_namevarchar(20)notnu11读者姓名r_mai1varchar(30)notnu11读者学院r_addrvarchar(50)notnu11读者班级表3book图书表表中列名数据类型可否为空说明idintnotnu11(主键)图书编号b_idvarchar(20)notnu11图书号b_namevarchar(50)notnu11图书名称b_authorvarchar(20)图书作者b_introvarchar(300)图书简介b_outvarchar(20)图书出版时间表4rb借阅表表中列名数据类型可否为空说明rb_idi
7、ntnotnu11(主键)借阅编号r_idintnotnu11读者编号b_idvarchar(20)notnu11图书编号b_outvarchar(20)notnu11借阅时间b_invarchar(20)notnu11返还时间5系统的设计与实现5.1 数据库的实施开启MYSERVER服务,打开SQ1SERVER,并登陆。建立数据脚本,并在运行脚本。数据脚本如下:createdatabasedbjibraryname=dbJibrary_dat,fi1ename=,dAdatadbJibrary.mdfsize=5,maxsize=5zfi1egrowth=1)1ogon(name=dbjib
8、raryjog,fi1ename=,dAdatadbJibrary.1df,zsize=5zmaxsize=5,fi1egrowth=1)usedbjibrary- -管理员表createtab1eadminidintidentity(1,1)primarykey,-管理员编号admin_namevarchar(20)notnu11,-管理员名称admin_pwdvarchar(20)notnu11-管理员密码)- 读者表createtab1ereader(r_idintidentity(1,1)primarykey,-读者编号r_namevarchar(20)notnu11,读者名称r_ma
9、i1varchar(30)notnu11,-读者学院r_addrvarchar(50)notnu11一读者班级)- 图书表createtab1ebook(idintidentity(1,1)primarykey,-图书编号-图书号-图书名称-图书作者-图书简介-图书出版时间b_idvarchar(20)uniquenotnu11,b_namevarchar(50)notnu11zb_authorvarchar(20)zbJntrovarchar(300)zb_outvarchar(20)- 借阅表createtab1erbrbjdintidentity(1,1)primarykey,一借阅编号
10、r_idintforeignkeyreferencesreader(rjd)notnu11,读者编号b_idvarchar(20)foreignkeyreferencesbook(bjd)notnu11,-借阅的图书号b_outvarchar(20)notnu11,-借阅-返还时间时间b_invarchar(20)notnu11-数据添加insertintoadminva1ues(a,a);insertintoreaderva1ues(zxy,计算机与信息科学学院,网络1301);insertintoreaderva1ues(1yh,计算机与信息科学学院网络1301);insertintore
11、aderva1ues(,ky1,计算机与信息科学学院,网络1301);insertintoreaderva1ues(dj计算机与信息科学学院网络130);insertintobookva1ues(,b1001美食天下,zzz做尽天下美食2015-12-15,)insertintobookVa1UeS(b1002),旅游攻略xxx玩转天下7201512-15)insertintobookVa1UeS(,b:IOo3,新闻当事人,yyy。不出门便知天下事2015-12-15,)5.2 数据库的连接主要连接代码实现:pub1icc1assDBConnectionManagerprivateStrin
12、gdriverName=com.microsoft.sq1server.jdbc.SQ1ServerDriver;privateStringur1=jdbc:sq1server:/1oca1host:1433;DatabaseName=dbJibrary;privateStringuser=,sa;privateStringpassword=a;pub1icStringgetDriverName()returndriverName;)pub1icvoidsetDriverName(StringdriverName)this.driverName=driverName;)pub1icString
13、getUr1()returnur1;)pub1icvoidsetUr1(Stringur1)this.ur1=ur1;)pub1icStringgetUser()returnuser;)pub1icvoidsetUser(Stringuser)this.user=user;)pub1icStringgetPassword()returnpassword;)pub1icvoidsetPassword(Stringpassword)this.password=password;)pub1icConnectiongetConn()tryC1ass.forName(driverName);return
14、DriverManager.getConnection(ur1,user,password);catch(Exceptione)SyStem.out.print”连接数据库失败!);e.printStackTrace();returnnu11;)pub1icc1assDBSQ1ManagerprotectedConnectioncon=nu11;protectedStatementstmt=nu11;protectedResuItSetrs=nu11;pub1icDBSQ1Manager()try(DBConnectionManagerdbcm=newDBConnectionManagerO;con=dbc