1、 *****学院 课程设计汇报 课程名称: 数据库原理课程设计 专 业: 计算机科学和技术 姓 名: ** 班 级: *********** 学 号: ************ 指导老师: ****** 6 月17日 图书管理系统 一、需求分析 当今时代是飞速发展信息时代。在各行各业中离不开信息处理,这正是计算机被广泛应用于信息管理系统原因。计算机最
2、大好处于于利用它能够进行信息管理。使用计算机进行信息控制,不仅提升了工作效率,而且大大提升了其安全性。尤其对于复杂信息管理,计算机能够充足发挥它优越性。计算机进行信息管理和信息管理系统开发亲密相关,系统开发是系统管理前提。本系统就是为了管理好图书馆信息而设计。 针对各大中专院校图书管理现实状况,设计出适合通常学校计算机辅助图书管理系统。实现对图书基础信息、读者基础信息进行计算机辅助管理,完成借书和还书相关信息统计、修改、查询、删除等一系列任务计算机管理和实现。 图书管理系统能方便、快捷地管理图书,将传统图书管理方法根本解脱出来,提升效率,减轻工人人员以往繁忙工作,减小犯错概率,使读者能够花
3、更多时间在选择书和看书上。从而使大家有更多时间来获取信息、了解信息、掌握信息。 各功效模块描述以下: 1.系统管理 系统管理中,能实现新管理员添加和现存管理员密码修改功效。 2.图书管理 在图书管理模块中,关键实现对图书类别添加和管理,而且能够添加新图书。 3.读者管理 实现对读者类别添加和管理,读者类别可包含老师学生等等,而且各读者类别所借阅图书书目和借阅时间全部存在差异。对已借阅图书读者信息进行添加和管理,而且以后可依据登记读者编号进行查阅。 4.借阅管理 借阅管理包含对应读者所借图书相关信息,可依据借阅编号
4、查询相关借阅情况,并查看时候超期借阅,并进行一定金额处罚。 图书管理系统 借阅管理 读者管理 图书管理 系统管理 添加图书类别 查询图书信息 修改图书信息 添加图书信息 修改图书类别 修改密码 添加新管理员 查询借书信息 管理借书信息 查询读者信息 管理读者信息 添加读者信息 管理读者类别 添加读者类别 图 1-1 图书管理系统功效模块 二、概念结构设计 图书 借阅 读者 编号 名称 作者 出版日期 登记日期 n m 编号 性别 单位 地址
5、 姓名 电话 管理员 借阅编号 是否超期 借出日期 归还日期 管理 q 1 用户名 登陆密码 类别 属于 类别号 类别名 已借阅数量 登记日期 p 1 处罚 超期 属于 读者类别 处罚金额 处罚编号 类别名称 最大借阅数 最长借阅时间 k h 1 1 处罚类别 图 2-1 概念结构E-R图 三、逻辑结构设计 管理员 (用户名,密码) 读者类别(类别名称,最大借阅数,最长借阅时间) 读者信息(读者编号,姓名,性别,单位,地址,电
6、话,类别名称,登记日期,已借阅数量) 图书类别(类别号,类别名) 图书信息(图书编号,图书名称,类别名,作者,出版日期,登记日期) 借阅信息(借阅编号,读者编号,读者姓名,图书编号,图书名称,借出日期,归还日期,是否超期) 四、数据库物理设计 1.管理员表Admin 图 4-1 Admin表 2.读者类别表RT 图 4-2 RT表 3.读者类别表RI 图 4-3 RI表 4.图书类别表BC 图 4-4 BC表 5.图书信息表BI 图 4-5 BI表 6.借阅信息表LI 图 4-
7、6 LI表 五、数据库实施 1、读者管理模块实施: 首先使用conn.ConnectionString字符串方法进行和SQL数据库连接, 在窗体中用commmand控件,label控件和textbox控件画出程序模型,然后建立统计集查询,然后用rs_addreader.Fields绑定各个textbox输入框到数据库。使用rs_addreader.AddNew进行数据添加,使用rs_addreader.update进行数据修改更新,使用rs_addreader.delete进行数据删除。 2、借阅管理模块实施: 使用adodc控件实现
8、程序和SQL数据库连接,在窗体中用commmand控件,label控件和textbox控件画出程序模型,然后在窗体中添加datagrid控件,将其datasource设置成adodc1,在将其中textboxdatasource属性也设置成adodc1,datafield设置成对应数据项。然后用ado控件建立第二个数据连接adodc2,用来连接数据库中读者信息表,实现对外表查询,在需要添加读者借阅信息时,只需要添加读者号,读者姓名会自动出现在文本框中,具体实现方法,将读者姓名text2绑定到数据源adodc2,并为读者号text1添加一个textchange事件: Adodc2.Comman
9、dType = adCmdText Adodc2.RecordSource = "select * from ri where ri_no= '" & Text1.Text & "'" Adodc2.Refresh 借阅罚款功效实现,当单击判定按钮时,自动用目前时间减去借阅时间,假如结果小于等于30,则弹出不超期提醒,若结果大于30则将结果减去30再乘以0.1元,得出应缴罚款。具体判定是否超期按钮代码为: Dim a As Date Dim w As Date a = Format(Now, "YYYY-Mm-DD") w = Trim(Text5.Text) b = a -
10、w If b > 30 Then MsgBox "借阅已超期,请缴罚款" & (b-30) * 0.1 & "元", vbOKOnly + vbExclamation, "警告" Else MsgBox "借阅还未超期。", vbOKOnly + vbExclamation, "提醒" End If End Sub 六、系统运行结果 1、读者管理: 图6-1 读者管理菜单 图6-2 添加读者类别 图6-3 管理读者类别 图6-4 添加读者信息 图6-5 管理读者信息 图6-6 查询读者信息 2、借阅管理 图6-7 借阅管理
11、 图6-8 管理借阅信息 图6-9 查询借阅信息 图6-10 查询学号为3学生借阅信息结果 七、实习总结 时间过得真快,转眼间,两周课程设计生活已悄然过去了,课程设计期间,让我学到了很多东西,不仅使我在理论上对 VB 程序和SQL 设计有了全新认识,在实践能力上也得到了提升,真正地做到了学以致用,更学到了很多做人道理,对我来说受益非浅。亲身感受到理论和实际相结合,让我大开眼界。这次课程设计对于我以后学习、找工作也真是受益菲浅,在短短两周中,相信这些宝贵经验会成为我以后成功关键基石,对程序设计有了理性认识和了解。在之前,程序设计对我来说是比较抽象,不知道一个完整程序要怎么完成。
12、这次我做项目是图书管理系统,其中包含了登陆、读者信息管理,图书信息管理,借阅信息管理等多个部分。在刚开始时候,做 只是多个简单界面,认为其实还算比较简单,到第三天,基础部分代码全部编写出来了,不过调试时候出现了很多问题。而且,有时候因为考虑不周和粗心缘故,代码方面也存在很大误差。老师教会了我们很多简单实用技巧。 也让我们意识到了要想全方面完整完成一个模块,首先要经行程序设计,全方面分析会用到东西及考虑可能会出现情况。所以出现问题也在老师指导下,顺利处理了。 本程序编写,有很多不足地方,可能有些功效不太全方面也不太完善,但我认为自己是认认真真做了,而且从中学到了很多,以 后,我要把自己欠缺知识点补习好,而且要学会举一反三,融会贯 通,最关键是改掉粗心马虎、考虑不周习惯。我想我以后会将此 程序完善好,争取能够利用到生活中去。 再次感谢老师耐心指导!






