图书借阅管理子系统方案.doc

上传人:李司机 文档编号:1091076 上传时间:2022-06-23 格式:DOC 页数:10 大小:712.50KB
返回 下载 相关 举报
图书借阅管理子系统方案.doc_第1页
第1页 / 共10页
图书借阅管理子系统方案.doc_第2页
第2页 / 共10页
图书借阅管理子系统方案.doc_第3页
第3页 / 共10页
图书借阅管理子系统方案.doc_第4页
第4页 / 共10页
图书借阅管理子系统方案.doc_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《图书借阅管理子系统方案.doc》由会员分享,可在线阅读,更多相关《图书借阅管理子系统方案.doc(10页珍藏版)》请在三一办公上搜索。

1、 数据库系统实验课程设计报告题目图书借阅管理子系统小组成员信息学号班级分工提交时间: 年 月 日一 开发环境与开发工具JAVA集成开发工具,Win7下SQL Server 二 系统需求分析(5分)系统数据字典本系统的设计模拟一般学校特别是高校的图书借阅管理容,经过充分地系统调研,发现本系统应包括图书馆信息、图书信息、图书室信息、学生信息、学生借书证信息等需管理信息。进一步还发现信息实体间需管理信息有:借书证办理、图书存放管理、学生借阅图书前查询、学生凭借借书证借书管理、学生借书后查询等容。能全面管理学校教学相关的各类主体、如图书馆信息、图书信息、图 书室信息、学生信息、学生借书证信息等; 通过

2、使用计算机能方便地维护(包括插入、删除、修改)各信息表; 能组合查询基于某信息表的所需信息; 能方便地实现基于多个表的连接查询; 能方便地实现基于单个或多个表的统计功能; 需要时能与时进行输出与打印; 系统应具有网络多用户功能,具有用户管理功能,对分等级用户提 供相应系统功能;三 功能需求分析(5分)系统功能模块图在数据库服务器如SQLServer中,建立个关系模式对应的库表,并确定主建、索引、参照完整性、用户自定义完整性等。能对各库表进行输入、修改、删除、添加、查询、打印等基本操作。新生入学,能根据学生信息办理各位学生的借书证,并能对本校的研究生作必要调整。能明细实现如下各类查询:能查询可借

3、阅图书的详细情况。能查询某学生的借书情况。能查询图书的借出情况。能统计实现如下各类查询:能统计出完成一次借阅任务后已借出书本总数和可借书量。能统计某图书的总借出量与库存量。能统计出某学生的借书总量、当天为止总罚金等。学生查询图书情况后即可借阅所需图书,对于未借出的图书可以预约。能分析出某学生借书是否已超期(须付清罚款金额后才可借书)。用户管理功能,包括用户登录、注册新用户更改用户密码等功能。其他读者认为子系统应有的查询、统计功能。四 系统设计(15分)数据概念结构设计(包括数据流程图、系统ER图)(5分)图书借阅管理子系统顶层数据流图图书借阅管理子系统中间层数据流图图书借阅管理子系统底层数据流

4、图反映教学管理系统的整体ER图数据库关系模式设计(5分)按照实体-联系图转化为关系模式的规则,本系统的E-R图可转化为如下约 10个关系模式(另外有两个辅助关系,共12个): 图书馆(馆编号,馆名,馆长工号,成立日月,地点,) 借书证(借书证号,学生,学生系别,专业,借书上限书) 学生 (学号,类别,学生,性别,出生日起,入校日期,家庭住址,备注,专业,班号) 图书 (图书编号,图书名称,出版日期,图书) 图书室(房间号,书架号,图书总量) 借书 (借书证号,图书编号,借出日期,归还日期) 存放 (图书编号,房间号,书架号) 办理 (学号,类别,借书证号,办理日期) 借阅前查询(图书编号,图书

5、名称,出版日期,房间号,借阅情况) 借书后查询 (图书编号,借书证号,借出时间,需归还时间) 另需辅助表: 用户表 (用户编号,用户名,口令,等级) 日志表 (序号,操作用户号,操纵类别,操作命令,操作日期时间)借书证&学生读者信息 读者信息 (读者编号,读者,性别,学院,专业,班级,学制,年级,情况,需借数量,借书数量) 图书&借书图书信息 图书信息 (图书编号,图书名称,图书状态,读者编号,借阅日期,出版时间) 借阅信息 (图书名称,读者编号,日期) 用户信息 (用户明,密码)数据库物理结构设计(5分)根据已设计出的关系模式与各模式的完整性要求,现在就可以在SQL Server数据库系统中

6、行实现这些逻辑结构。下面是创建数据与其表结构的Transact-SQL命令(SQL Server 中的SQL命令)CREATEDATABASETSJY;goUSETSJY;CREATETABLEbuser(user_idvarchar(50)NOTNULLPRIMARYKEYCLUSTERED(user_id),user_namevarchar(50)NULL,sexvarchar(50)NULL,deptvarchar(50)NULL,specialityvarchar(50)NULL,classvarchar(50)NULL,esysvarchar(50)NULL,gradevarchar

7、(50)NULL,situationvarchar(50)NULL,sumbigint(8)default(0),inhandbigint(8)default(0)book(book_id,book_name,status,user_id,borrow_date,press,year)CREATETABLEbook(book_idvarchar(50)NOTNULLPRIMARYKEYCLUSTERED(book_id),book_namevarchar(50)NULL,statusvarchar(50)NULL,user_idvarchar(50)NULLCONSTRAINTBS_FFORE

8、IGNKEYREFERENCESbuser(user_id),borrow_datevarchar(50)NULL,pressvarchar(50)NULL,yearvarchar(50)NULL,)CREATETABLEreserve(book_namevarchar(50)NULL,CONSTRAINTBO_FFOREIGNKEYREFERENCESbook(book_name),user_idvarchar(50)NULLCONSTRAINTBS_FFOREIGNKEYREFERENCESbuser(user_id),datevarchar(50)NULL)CREATETABLEadmi

9、n(unamevarchar(50)NULLupasswordvarchar(50)NULL)五 系统功能的实现 (10分)主要功能模块的实现过程(简述,不要全部源代码放在此处)1教学管理子系统的主窗体设计2主窗体的菜单设计3创建公共模块图书借还与预定与数据库连接代码如下packagelibrary;importjava.io.*;importjava.sql.*;importjavax.swing.JOptionPane;publicclassBridge/privateStringdbURL=jdbc:odbc:driver=Micorsoft.jet.OLEDB.4.0(*.mdf);d

10、bq=E:codingdbtsjyTUJYl.mdf;privateStringdbURL=jdbc:odbc:tsjy;privateStringuser=sa;privateStringpassword=;publicConnectiongetConnection()tryClass.forName(sun.jdbc.odbc.JdbcOdbcDriver);returnDriverManager.getConnection(dbURL,user,password);catch(Exceptione)e.printStackTrace();JOptionPane.showMessageDi

11、alog(null,e.toString(),JOptionPane.WARNING_MESSAGE);returnnull;voidsetURL(Stringurl)this.dbURL=url;voidsetUser(Stringuser)this.user=user;voidsetPassword(Stringpass)this.password=pass;classManageprivateStatementsta;publicvoidsetStatement(Connectioncon)trythis.sta=con.createStatement(ResultSet.TYPE_SC

12、ROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);catch(Exceptione)JOptionPane.showMessageDialog(null,e.toString(),JOptionPane.WARNING_MESSAGE);e.printStackTrace();publicvoidcloseStatement()trysta.close();catch(Exceptione)JOptionPane.showMessageDialog(null,e.toString(),JOptionPane.WARNING_MESSAGE);e.printS

13、tackTrace();publicResultSetexecuteQuery(StringsqlCommand)tryreturnsta.executeQuery(sqlCommand);catch(Exceptione)e.printStackTrace();JOptionPane.showMessageDialog(null,e.toString(),JOptionPane.WARNING_MESSAGE);returnnull;publicvoidexecuteUpdate(StringsqlCommand)trysta.executeUpdate(sqlCommand);catch(

14、Exceptione)e.printStackTrace();JOptionPane.showMessageDialog(null,e.toString(),JOptionPane.WARNING_MESSAGE);publicvoidexecuteInsert(StringsqlCommand)trysta.executeUpdate(sqlCommand);catch(Exceptione)e.printStackTrace();JOptionPane.showMessageDialog(null,e.toString(),JOptionPane.WARNING_MESSAGE);publ

15、icvoidexecuteDelete(StringsqlCommand)trysta.executeUpdate(sqlCommand);catch(Exceptione)e.printStackTrace();JOptionPane.showMessageDialog(null,e.toString(),JOptionPane.WARNING_MESSAGE);4图书信息维护模块5读者信息维护模块六、系统功能测试(5分)运行界面展示使用管理员权限登陆后,可以对书籍信息进行管理。选择“基本资料维护”|“图书资料维护”命令,弹出书籍资料维护对话框。如果单击“添加”按钮,输入新的信息后,单击“保

16、存”按钮保存到数据库中。为了测试还书模块,可先利用读者身份登陆查看借书信息,选择“查询服务”|“读者服务”命令,弹出读者借书信息对话框,为了验证还书操作是否成功,再使用读者身份登陆,选择“查询服务”|“读者服务”命令,弹出读者借书信息对话框,上面的读者借书信息已不存在,数据库的书籍表中01的状态改为可借,说明还书成功。此时到数据库的书籍表中确实可以看到新增了书籍信息,说明操作成功。用户可以根据不同的关键字对书籍进行分类查询。选择“查询服务”|“查询书籍”命令,弹出书籍检索对话框,可以分类查询:七、总结实验心得,用到的数据库课程的相关概念和技术有哪些。通过网上查询以与咨询同学对各种问题有了简单的

17、了解,基本上完成了此次课程设计的任务。数据库作为现代数据管理最先进的手段,掌握数据库系统设计的基本方法和步骤是对现代软件开发人员的基本要求。在具体的设计与实施中,我们看到并感受到了一个管理系统从无到有的过程,对具体的设计步骤、思路、方法、技巧都有了进一步的了解,并感受深刻。在设计中我们基本能按照规的方法和步骤进行,首先对现有的系统进行调查,并查阅有关资料,最后确定设计方案,建立E-R图,然后创建数据库并添加信息,实施过程中我们深刻的认识到认真执行管理系统软件标准的重要性。在数据库的设计上利用了SQLServer的便利性和实用性。在查询方面,系统实现了多条件任意字段的模糊查询,系统可以自动识别用户不同的输入。在图书入库、借出和归还三者之间建立了良好的关系,某一部分地修改均会自动引发系统对与其相关的部分进行连锁修改。在用户管理方面,系统较好地实现了办理借书卡,以与用户密码修改等各项功能。10 / 10

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号