还剩13页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
数据库系统课程设计报告图书馆管理信息系统姓名孙锐学号20098344039指导教师崔萌萌起始时间・・
201210.16-
201210.23添加表单代码
3.
3.3为了方便描述,只表述表单中部分代码,系统主表单中的部分代码如下所示A.“新书入库管理”页框“添加”命令xx=messagebox(〃确认添加本书信息?〃,1+32+0,〃信息提示〃)thisform.refreshuse图书信息数据表if图书信息数据表.图书编号=(thisform.pageframel.pagel.text
2.value)xx=messagebox(〃温馨提示本书信息添加重复!〃,0+48,〃提示〃)elseinsert into图书信息数据表(图书名称,图书编号,图书类别,图书作者,出版社,图书价格;valuesthisform.pageframe
1.pagel.textl.value,thisform.pageframe
1.pagel.text
2.value,thisform.pageframel.pagel.text
3.value,thisform.pageframel.pagel.text
4.value,thisform.pageframel.pagel.text
5.value,thisform.pageframel.pagel.text
8.val ueendif“清除”命令thisform.PAGEFRAMEL PAGEl.TEXTL value二〃〃thisform.PAGEFRAMEL PAGE
1.TEXT
2.value二〃〃thisform.PAGEFRAME
1.PAGEl.TEXT
3.value=thisform.PAGEFRAMEL PAGE
1.TEXT
4.value二〃〃thisform.PAGEFRAMEL PAGE
1.TEXT
5.value二〃〃thisform.PAGEFRAMEL PAGELTEXT
8.value二〃〃“打开最近添加”命令use图书信息数据表go bottomskip-3do form入库图书表B.“旧书出库管理”页框“删除”命令use图书信息数据表delete from图书信息数据表where thisform.pageframel.page
2.text
2.value=图书编号PACKdo form出库图书表“上一条”命令IF!B0FSKIP-1THISFORM.REFRESHENDIF“下一条”命令IF!EOF SKIP1THISFORM.REFRESHEND IFC.“借阅证管理”页框“借阅证注册”命令do form借阅证注册表“借阅证注册”命令do form借阅证注册表I.“借还书管理”页框“借书”命令if thisform.optiongroupl.optionl.value=luse教师信息数据表insert into读者借还书记录表;values alltrimthisform.text
2.value,alltrimthisform.textl.value,alltrimthisform.t ext
3.value,alltrimthisform.text
3.valuemessagebox〃教师借书成功!〃do form读者借还书记录表elseuse学生信息数据表insert into读者借还书记录表;Valuesall trimthisform.text
2.value,all trimthisform.textl.value,alltrimthisform.t ext
3.value,alltrimthisform.text
3.valuemessagebox〃学生借书成功!〃do form读者借还书记录表END IF“还书”命令if thisform.optiongroupl.optionl.value=1USE读者借还书记录表deleTE FROM读者借还书记录表WHERE thisform.text
2.value二学号packmessagebox〃教师还书成功!〃thisform.refreshdo form读者借还书记录表elseUSE读者借还书记录表deleTE FROM读者借还书记录表WHERE thisform.text
2.value二学号packmessagebox(〃学生还书成功!〃)thisform.refreshdo form读者借还书记录表endif图书馆管理信息系统的实现过程
4.系统结构
4.
1.我们用两层体系结构作为图书馆管理信息系统软件解决方案的核心,把信息系统按功能划分为管理和维护、信息服务和信息查询三大块,分别放置在相同或不同的硬件平台上,并将系统的操作人员划分为三类读者,工作人员,系统管理员登录系统界面的设计
4.
2.
1.从列表框里选择用户,此列表框内的用户直接与数据库里工作人员的表相关联
2.输入密码判断该密码与工作人员表中定义的密码是否相符
3.如果不正确,提示输入正确的信息
4.如果正确,用户登录,并根据工作人员表中的用户权限设定其可操作界面
5.对于用户的权限规定权限为的用户(系统管理员)拥有全部的权限权限为2的用户除不能修改图书馆的规则管理以外,拥有其他的全部管理权限,相当于底层的工作人员系统初始化、新书的入库、图书整理、修改图书信息、规则维护、用户信息管理、查询图书借阅、图书借出、图书归还权限为3,的用户为前台的工作人员;他只能负责前台的工作图书借出、图书归还管理和维护子系统的设计
4.
3.
1.新书入库首先根据图书名称自动产生图书编号(由数据库内的过程产生)
2.修改图书信息根据输入的图书编号将已经插入的图书信息在界面上显示出来,然后由工作人员修改图书信息,将修改后的图书信息再重新插入数据库,此时的图书编号不发生改变
3.用户信息管理对于已毕业的学生应删除其在数据库中的记录新入学的学生应根据其学籍档案在读者基本信息表里为其建立信息记录
4.规则管理根据图书馆的最新规定增加或修改已存在的管理规则
5.整理图书库a、图书遗失首先根据读者编号查询该遗失图书的基木信息再根据管理规则对遗失该图书的读者进行处罚之后对该图书的信息进行整理在遗失图书基本情况表里为其建立一条记录,并将其在其它表里的相关记录信息予以删除b、图书下架首先根据图书编号查询图书的基本信息查看该书是否已借出若己借出是否要进行下架的操作处理对于下架的图书,首先应在过期图书基本情况表里为其建立一条记录,并将其在其它表里的相关记录信息予以删除开发过程遇到的问题及解决方法
5.1关于字段为datetime型时产生的问题在修改图书信息时其中关于书籍的入库时间在数据库里定义为datetime型当对书籍的信息进行修改后,若图书的入库时间为空时,则在插入数据时将产生错误解决方法当此字段为空时,将该书的入库时间默认为当前时间2对于有外键约束的表,在界面端用SQL语句向表中插入记录时,该外键属性值必不能为空,且必须将插入记录的所有属性都在语句中列出如在图书遗失情况下,首先应向LostBook表中添加该图书的记录,但此处因有外键约束:BookID,ReaderlD,则不能用语句insertinto LostBookvalues:sno,:sreaderid,:sname,:swriter,:spublic,:sprice,:slostdate,:srepa yo3图书遗失的表单中首先需根据其读者编号查询该读者和书籍的信息因此表单中的Query的SQL查询语句是预先已经定义好的,只是在运行时对其参数进行一次赋值读者编号操作但在几次的操作之后发现当打开该表单后只能查询一次读者的信息,即使对其参数赋不同的值,但显示的结果都是第一次所赋读者编号的所有信息解决方法在表单里对Queu的SQL语句先清空,然后重新写SQL语句4关于图书整理表单的统计页的问题在此我定义了统计所有未按时归还的图书总数,其代码是qrydel.SQL.AddJ selectcount BookIDfrom BorrowRecorderwhere PastTime二:stime;qrydel.ParamByName Cstime,.AsString:=是;但此处的PastTime=是存在某些疑惑,因为在此系统里对于图书借阅表中是否超期的字段都是在还书时根据借书时间和可借期限进行统计然后再赋值的,所以若某些图书虽未归还但根据其借书期限已经超期了,但因该图书尚未归还则在图书借阅表中该超期字段并不是是这种情况下的统计出来的结果则会发生错误!解决方法在数据库段建立过程,只要图书已经超期则修改图书借阅表中是否超期字段5总结在Delphi中出现的错误大体有以下几种编译错误这种错误出现一般都是代码的语法问题因为编译而导致Delphi停运行运行错误这个错误是发生在你准备运行Delphi时的,例如如果你试图给一个变量赋值,但是却超出了该变量允许的范围逻辑错误逻辑错误是最难发现的,这种错误经常是一种结构错误这就需要我们彻头彻尾地检查我们的代码如何处理错误发生错误后,我一般都是设置断点,对语句进行一条一条的调试参考文献
[1]魏志强、王忠华、何敏、乔林,《数据库应用实务篇》,中国铁道出版社2000
[2]齐治昌、谭庆平、宁洪,《软件工程》,高等教育出版社1997年第一版
[3]韩强,《SQL SERVER2000程序员手册》,机械工业出版社2000
[4]吴起程,《DELPHI5企业级解决方案及应用剖析》电子工业出版社2000
[5]潇湘工作室、邢增平,《Delphi
6.0最佳专辑》,人民邮电出版社2002
[6]飞思科技产品研发中心,《Delphi
6.0开发者手册》,电子工业出版社2002
[7]史彦军,《Delphi
5.0开发大全》,中国水利水电出版社2000
[8]飞思科技产品研发中心,《Delphi分布式开发》,电子工业出版社1999
[9]刑增平等,《Delphi
6.0最佳专辑》,人民邮电出版社2002
[10]张子江、蓝薇等著,《Delphi
6.0高级开发范例》,电子工业出版社2002年
[11]萨师熠、王珊,《数据库系统概论》,高等教育出版社2000年第三版
31.
31.
1.
31.
1.
41.
1.
42.
42.
51.
1.
51.
61.
73.
3.
74.
3.
75.
134.
135.
136.
1.
1.课题背景及意义
1.
1.
1.今天,随着信息技术的发展,在图书馆的管理中运用传统的手工操作方式在现在这个数字化的时代已显得极不适应,因此,工作人员和读者对于运用计算机来辅助协调和管理自身工作的需求正在逐步提高随着我国现代化技术的不断提高和普及,学校也在不断的提高它的各个部门的管理质量,而图书馆管理就是对图书的编目、查询及读者信息的管理.,重要的是图书的信息管理,包括图书的采购、编目、下架、遗失等因此,图书的管理是一个工作量比较大而且较为繁杂的工作,至今还有很多学校仍然采用人工管理的方式,由两三个工作人员管理图书档案,对于借书还书都是用手工来进行操作,而一旦借阅者较多时就容易因忙碌导致错误的产生,这样的情况在今天这样一个科技高速发展、工作节奏加快的年代真是感觉太原始了自从管理信息系统这一新兴的管理方法引入我国,在我国企业管理中已有20多年的时间现在,管理信息系统已经广泛应用于各行各业因此在这样的前提下,我选择了“图书馆管理信息系统”这样一个较为普遍,同时又较为典型的课题在当今这样一个科技高速发展的社会里,仅有理论知识是显然不行的,所以,我希望通过开发这个系统,能更好地把理论与实际结合起来,充分将自己所学的专业知识应用于实践之中,并在实践中不断充实自己,提高自己的专业技能水平,以获取更多的教益课题的来源
1.
1.
2.本课题由学院和辅导老师提出,基于Delphi
7.0及SQL Server2000数据库平台开发图书馆管理信息系统,用于解决图书在馆内的信息变更、查询,以及读者借阅图书等问题系统工具介绍
1.
1.
3.....本系统的开发工具是用面向对象的Delphi进行设计的Delphi是由美国Borland公司推出的功能强大、使用灵活的快速应用开发工具,是面向对象领域的开发工具中的佼佼者它具有运行速度快、易于学习和使用以及开发效率高等特点,是可视化的应用编程开发环境、可重用性面向对象语言、快速编译器和数据库的完美结合它在各个方面都具有优越性,提供了一系列开发、测试和调试的先进工具,包括大量可以重复使用的VCL组件库、各种Form模板其应用程序主要是围绕着窗体和单元两个部分进行,窗体Form是与用户直接可见的对象,Delphi的应用程序由多个窗体Form组成,与之相对应的是单元,每个单元对应一个Form程序区段,包含事件处理程序、过程和函数图书馆管理信息系统解决方案
2.方案内容
2.
1.我们可以用两层体系结构作为图书馆管理信息系统软件解决方案的核心,它的基本思想是将读者操作的界面同工作人员的操作界面分离,把信息系统按功能划分为管理和维护、信息服务和信息查询三大块,分别放置在相同或不同的硬件平台上之后从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块这样,就把一个大的系统分解成了几个小系统系统划分了子系统后,下一步的工作是继续划分子系统的小模块先考虑在进入子系统时应该做什么,进入系统之后又应该做什么,提供哪些服务等例如,对于图书信息服务子系统,在工作人员进入时首先得调用相关数据库表,找出该工作人员的基本信息;进入系统后,子系统得提供图书查询,图书借阅和还书的功能需求分析
2.
2.图书管理系统需要满足来自三方面的需求,这三个方面分别是图书借阅者、图书馆工作人员和图书馆管理人员图书借阅者的需求是查询图书馆所存的图书、个人借阅情况及个人信息的修改;图书馆工作人员对图书借阅者的借阅及还书要求进行操作,同时形成借书或还书报表给借阅者查看确认;图书馆管理人员的功能最为复杂,包括对工作人员、图书借阅者、图书进行管理和维护及系统状态的查看、维护并生成催还图书报表图书借阅者可直接查看图书馆图书情况,如果图书借阅者根据本人借书证号和密码登录系统,还可以进行本人借书情况的查询和维护部分个人信息一般情况下,图书借阅者只应该查询和维护本人的借书情况和个人信息,若查询和维护其他借阅者的借书情况和个人信息,就要知道其他图书借阅者的借书证号和密码这些是很难得到的,特别是密码,所以不但满足了图书借阅者的要求,还保护了图书借阅者的个人隐私图书馆工作人员有修改图书借阅者借书和还书记录的权限,所以需对工作人员登陆本模块进行更多的考虑在此模块中,图书馆工作人员可以为图书借阅者加入借书记录或是还书记录,并打印生成相应的报表给用户查看和确认图书馆管理人员功能的信息量大,数据安全性和保密性要求最高本功能实现对图书信息、借阅者信息、总体借阅情况信息的管理和统计、工作人员和管理人员信息查看及维护图书馆管理员可以浏览、查询、添加、删除、修改、统计图书的基本信息;浏览、查询、统计、添加、删除和修改图书借阅者的基本信息,浏览、查询、统计图书馆的借阅信息建立目标系统的逻辑模型分析目标系统与当前系统逻辑上的差别,明确目标系统到底要“做什么”,从而从当前系统的逻辑模型导出目标系统的逻辑模型书籍信息管理1・书籍信息的输入,包括书籍编号、书籍名称、书籍类别、书籍作者、出版社等•书籍信息的删除,包括书籍编号、书籍名称、书籍类别、书籍作者、出版社读者信息管理2・读者基本信息的输入、修改、查询,包括读者编号、读者姓名、读者种类、读者性别、地址、读者状况等・读者借书信息的输出,包括读者编号、读者姓名、读者种类、读者性别、地址、读者状况等・读者还书信息的输入,包括读者编号、读者姓名、书籍编号、书籍名称、借书日期、还书日期等系统总体设计
3.系统总体设计
3.
1.对于图书馆主要负责提供的功能是指从图书的购入开始直到该图书过期下架的整个流通过程,这其中包括图书入库、借出、归还以及对参与此流通过程的读者的信息管理
(1)新图书信息入库建立图书信息库,以便读者进行查询和借阅
(2)修改图书信息在建立信息库时可能因操作错误或其它情况而造成数据库里图书信息的错误,需要修改这些错误
(3)整理图书库图书因使用过久或信息过时需做下架处理,或者在读者借阅书籍时发生遗失的情况下需做遗失处理,这些都需要修改数据库关于书籍的信息
(4)读者信息管理读者一般都是在校的学生和教师教师的信息一般在建立档案后一般不需要修改(或修改量较小),而对于学生则会有新生入学和老生毕业等情况出现,这些都需要修改数据库关于读者的信息
(5)借书图书馆主要的功能就是提供书籍供读者借阅,在借阅图书时应按图书馆的规则进行借阅,例如不超过5本,如果已有超时借阅的图书,则在归还前不允许再借阅等等
(6)还书对于图书遗失或超期归还的情况应根据图书馆的规则进行处罚
(7)规则管理对于读者借阅书籍的权限(可借阅书籍数目,每人每本书可持有天数等)应该能按其类型加以分类,若有图书遗失或超期未还的情况发生,图书馆都应该规定处罚的条例另外对于操作此系统的前端工作人员的权限也应该有一定限制这些都应该只能由系统管理员来进行操作和修改
(8)信息查询一般读者在借阅书籍前都需查询图书馆关于所借书籍的大概信息该图书是否在馆一是否已借出一在馆中的书架号;除查询书籍外读者还可查询关于自身的信息是否有超期未还的图书,还可借阅书籍数目等系统总体功能图
3.
2.图书信息管理系统图书管理和维护子系统信息查询图书信息子系统服务子系统更书读图图系图图系读信还改刊者书书统书书统者息书图目借借归初入整维管发通书录阅阅还始库理护理布报信查信化息询息查图3-2总体功能图数据库设计
3.
3.设计数据库
3.
3.1本系统实现了系统登录功能,而系统登录需要账号和密码,这就需要创建一个“系统帐号”(Accounts)数据表,用来存储系统登录用的账号和密码本系统要实现图书资料和学生资料的管理,所以需要创建“学生信息、”(Student)数据表和“图书信息”(Book)数据表“学生信息”(Student)数据表中包含了学生的“系别”信息,在本系统中为了简化系别的管理,另外创建了一个“系别”(Xibie)数据表用来存储系别的信息,在“学生信息”(Student)数据表中只存储系别的编号由于系统要实现读者借还书功能、还要实现读者借还书记录的查看,所以还需创建一个“读者借书记录”(JyRec)数据表来保存读者的借阅记录创建数据库
3.
3.2“图/借阅管理系统”作为一个完整的数据库管理系统,在创建阶段利用项目管理器可以更好组织管理各种格式的文件,因此首先需要创建一个项目,然后在项目管理器创建其他格式的文件在VFP主窗口中选择“文件”菜单下“新建”子菜单,在打开的“新建”对话框的“文件类型区域中选中项目然后单击右侧的“新建文件”按钮,打开”创建“对话框中的”项目文件“文本框中输入项目名称,在此输入〃Tushu”,单击“保存”按钮即创建了一个项目在项目管理器的“数据”选项卡中选中“数据库”单击右侧的“新建”按钮,在弹出的“新建数据库”对话框中单击“新建数据库”,在弹出的“创建”对话框的“数据库名”文本框中输入数据库的名称,在此输入“Tushu”作为数据库名,单击“保存“按钮即创建了一个空的数据库在项目管理器的“数据”选项卡中打开刚才创建的“Tushu”数据库的目录树,选中“数据表”,单击右侧的“新建”按钮即可开始数据表的创建本系统中要用到的数据表的字段的属性设置分别设置如下表
3.
3.2“系统帐号”(Accounts)数据表字段属性设置字段名数据类型说明帐号字符型字段宽度索引字段,不能为空10密码字符型字段宽度10姓名字符型字段宽度10创建“系统账号”(Accounts)数据表后向数据库中添加一条记录作为系统的默认帐号“学生信息”(Student)数据表各字段的属性设置如表3-1所示图学生E-R图表
3.
3.3“学生信息”(Student)数据表字段属性设置字段名数据类型说明学号字符型字段宽度主索引字段,输入掩码为6,“999999”姓名字符型字段宽度10性别字符型字段宽度2系别字符型字段宽度为普通索引4,班级字符型字段宽度10地址字符型字段宽度30表
3.
3.4“图书信息”(Tushu)数据表字段属性设置字段名数据类型说明图书编号字符型字段宽度主索引字段,输入掩码为6,“AA9999”图书类别字符型字段宽度10图书名称字符型字段宽度40图书作者字符型字段宽度20出版社字符型字段宽度40图书价格货币型字段宽度8借阅次数数值型字段宽度默认值4,0是否借出逻辑型字段宽度默认值1,“.F.”对“图书信息”(Book)数据表的字段属性设置需要说明的是“借阅次数”和“是否借出”字段的默认值一定要设置,因为对于新添加的图书,其一定是没有被借出的,而且其借阅次数一定是0,所以在表单中向数据表添加记录时,这两个字段应该是不需耍添加的,可以由默认值生成表
3.
3.6读者借书记录”数据表字段属性设置字段名数据类型说明姓名字符型字段宽度普通索引字段,输入掩码为8,“999999”号码字符型字段宽度普通索引字段,输入掩码为6,“9999”图书编号字符型字段宽度普通索引字段,输入掩码为6,“AA999”图书名称字符型字段宽度20,。
个人认证
优秀文档
获得点赞 0