数据库设计关于图书馆管理系统的设计_图书馆系统数据库设计
数据库设计关于图书馆管理系统的设计由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“图书馆系统数据库设计”。
VF数据库设计的报告
设计题目:图书管理系统
专业:会计电算化
学生姓名:余琴
学生学号:1040706422
指导老师:韩梅
时间:2011年12月21日星期三
图书管理系统一. 目的
掌握计算机管理信息系统设计的一般方法,主要包括系统分析,系统设计的组织和实施。缩短借阅者的等待时间,减轻工作缩人员的工作量,方便工作人员对他的操作,提高管理的质量和水平.,做到高效智能化管理从而提高图书借阅信息管理效率。简化工作人员的劳动。
二.系统具体功能需求
1)图书馆借阅书籍于归还书籍的登记。也就是为读者建立一个台账,应用该台账,工作人员能方便地掌握某位读者借了哪些书,借了多长时间。
3)提供快速的图书查询功能,方便读者尽快插大所需要的书。4)系统提供的全部功能要简单、直观、实用。5)查询图书馆的藏书情况和图书的分类情况
三.系统数据库关系的E—R图:
1,系统所涉及到的实体及关联关系比较简单,主要的实体只有读者和图书两个,他们通过读者的借阅活动而发生联系,其E—R图如下:
2,数据库结构实体
四、系统设计:
1.功能设计
用户信息:包括用户密码和用户权限,对用户信息有修改和查询的功能
图书信息的输入,包括图书编号.书名,作者,单价.所属类别该模块按图书编号和书名实现查询和修改.维护删除功能。图书的出借、返还和资料统计
借书信息管理:图书编号.读者编号,图书名,作者,借书日期,应还日期,罚金 学生信息管理:编号,姓名,性别,学号,学院,专业,年级
还书信息管理:读者编号,图书编号,图书名,作者,还书日期,应还日期,借书日期,是否逾期
2.数据库结构设计
1)根据E—R图,将其转化为如下数据实体,数据库:book.dbc,包括如下的表和视图:学生信息管理——reader.dbf。编号
C(8)姓名
C(8)学号
C(30)性别
C(11)专业
C(20)学院
D 年级
D 2)图书管理信息——booker.dbf。
图书编号
C(10)书名
C(10)作者
C(10)所属类别
C(10)单价
N(8)3)图书类型表——typer.dbf
图书类别
C(8)4)借书信息管理——brower.dbf
读者编号
C(8)图书编号
C(8)图书名
C(10)xxxxxxxxxxxxx 借书日期
D
应还日期
D 罚金
N(8)
5)还书信息管理表—brower,dbf
图书编号
(8)
读者编号
(8)
图书名
(20)
作者
(20)
还书日期
D
应还日期
D 借书日期
D3、总体模块设计(即关系模型):
该系统的全部功能由一个主控界面(两个表单)、以及相关的四个表单组成,其总体模块框图如下:
五.模块(表单设计及编程)
1、表单的设计:
A..学生信息管理有如下图:
“查询”按钮的click事件代码:
LOCAT FOR 学生信息管理.学号=ALLTRIM(THISFORM.TEXT1.VALUE)AND;学生信息管理.姓名=ALLTRIM(THISFORM.TEXT2.VALUE)IF FOUND()THISFORM.TEXT3.VALUE=学生信息管理.编号 THISFORM.TEXT4.VALUE=学生信息管理.性别 THISFORM.TEXT5.VALUE=学生信息管理.姓名 THISFORM.TEXT6.VALUE=学生信息管理.学号 THISFORM.TEXT7.VALUE=学生信息管理.学院 THISFORM.TEXT8.VALUE=学生信息管理.专业 THISFORM.TEXT9.VALUE=学生信息管理.年级 ELSE N=MESSAGEBOX(“对不起,没有你查找的对象!”,48)THISFORM.RELEASE ENDIF “清除”按钮的click事件代码: THISFORM.TEXT1.VALUE=“ ” THISFORM.TEXT2.VALUE=“ ” THISFORM.TEXT3.VALUE=“ ” THISFORM.TEXT4.VALUE=“ ” THISFORM.TEXT5.VALUE=“ ” THISFORM.TEXT6.VALUE=“ ”
THISFORM.TEXT7.VALUE=“ ” THISFORM.TEXT8.VALUE=“ ” THISFORM.TEXT9.VALUE=“ ” “退出”按钮的click事件代码: THISFORM.RELEASE
“上一条”按钮的click事件代码: skip-1 if bof()meagebox(“已到表头”,48)go top endif thisform.refresh “下一条”按钮的click事件代码: skip if eof()meagebox(“已到表尾”,48)go bottom endif thisform.refresh “退出”按钮的click事件代码: THISFORM.release
“添加”按钮的click事件代码: APPEND thisform.refresh “修改”按钮的click事件代码: EDIT
B,图书管理信息有如下图:
“查询”按钮的click事件代码:
LOCAT FOR 图书管理信息.图书编号=ALLTRIM(THISFORM.TEXT1.VALUE)AND;图书管理信息.书名=ALLTRIM(THISFORM.TEXT2.VALUE)IF FOUND()THISFORM.TEXT3.VALUE=图书管理信息.图书编号 THISFORM.TEXT4.VALUE=图书管理信息.书名 THISFORM.TEXT5.VALUE=图书管理信息.作者 THISFORM.TEXT6.VALUE=图书管理信息.单价 THISFORM.TEXT7.VALUE=图书管理信息.所属类别 ELSE N=MESSAGEBOX(“对不起,没有你查找的对象!”,48)THISFORM.RELEASE “退出”按钮的click事件代码: THISFORM.release “清除”按钮的click事件代码: THISFORM.TEXT1.VALUE=“ ” THISFORM.TEXT2.VALUE=“ ” THISFORM.TEXT3.VALUE=“ ” THISFORM.TEXT4.VALUE=“ ” THISFORM.TEXT5.VALUE=“ ” THISFORM.TEXT6.VALUE=“ ” THISFORM.TEXT7.VALUE=“ ”
“上一条”,“下一条”
“退出”
按钮的click事件代码和学生信息管理的代码相同:
“添加”按钮的click事件代码: APPEND thisform.refresh “修改”按钮的click事件代码: EDIT
C.借书信息管理有如下图:
“借书”按钮的click事件代码: append blank replace 读者编号 with thisform.text1.value,图书编号 with thisform.text2.value,借书日期 with date()meagebox(“借书成功”,48)thisform.refresh
ELSE “查询”按钮的click事件代码:
LOCAT FOR 借书信息.读者编号=ALLTRIM(THISFORM.TEXT1.VALUE)AND;借书信息.图书编号=ALLTRIM(THISFORM.TEXT2.VALUE)IF FOUND()THISFORM.TEXT3.VALUE=借书信息.图书编号 THISFORM.TEXT4.VALUE=借书信息.图书编号 THISFORM.TEXT5.VALUE=借书信息.图书名 THISFORM.TEXT6.VALUE=借书信息.作者
THISFORM.TEXT7.VALUE=借书信息.借书日期
THISFORM.TEXT8.VALUE=借书信息.应还日期 THISFORM.TEXT9.VALUE=借书信息.罚金
N=MESSAGEBOX(“对不起,没有你查找的对象!”,48)THISFORM.RELEASE ENDIF “清除”按钮的click事件代码: THISFORM.TEXT1.VALUE=“ ” THISFORM.TEXT2.VALUE=“ ” THISFORM.TEXT3.VALUE=“ ” THISFORM.TEXT4.VALUE=“ ” THISFORM.TEXT5.VALUE=“ ” THISFORM.TEXT6.VALUE=“ ” THISFORM.TEXT7.VALUE=“ ” THISFORM.TEXT8.VALUE=“ ” THISFORM.TEXT9.VALUE=“ ” “退出”按钮的click事件代码: THISFORM.release
“上一条”,“下一条”
“退出”
按钮的click事件代码和学生信息管理的代码相同:
D,还书信息管理图如下:
“上一条”,“下一条”
“退出”
按钮的click事件代码和学生信息管理的代码相同:
“还书”按钮的click事件代码:
locate for alltrim(读者编号)=alltrim(thisform.text1.value)and alltrim(图书编号)=alltrim(thisform.text2.value)qx=90 if found()if date()-借书日期>qx meagebox(“超期”,48)fj=(还书日期-借书日期-qx)*0.1 meagebox(“罚金”+str(fj,10,2),48,“罚金”)replace 罚金 with fj endif replace 还书日期 with date()meagebox(“还书成功”,48)else meagebox(“该读者未借阅此书”,48)endif
“查询”按钮的click事件代码:
LOCAT FOR 还书信息管理.读者编号=ALLTRIM(THISFORM.TEXT1.VALUE)AND;还书信息管理.图书编号=ALLTRIM(THISFORM.TEXT2.VALUE)IF FOUND()THISFORM.TEXT3.VALUE=还书信息管理.读者编号 THISFORM.TEXT4.VALUE=还书信息管理.图书编号 THISFORM.TEXT5.VALUE=还书信息管理.图书名 THISFORM.TEXT6.VALUE=还书信息管理.作者
THISFORM.TEXT7.VALUE=还书信息管理.还书日期
THISFORM.TEXT8.VALUE=还书信息管理.应还日期 THISFORM.TEXT9.VALUE=还书信息管理.借书日期 THISFORM.TEXT10.VALUE=还书信息管理.是否逾期 ELSE N=MESSAGEBOX(“对不起,没有你查找的对象!”,48)THISFORM.RELEASE ENDIF “清除”按钮的click事件代码: THISFORM.TEXT1.VALUE=“ ” THISFORM.TEXT2.VALUE=“ ” THISFORM.TEXT3.VALUE=“ ” THISFORM.TEXT4.VALUE=“ ” THISFORM.TEXT5.VALUE=“ ” THISFORM.TEXT6.VALUE=“ ” THISFORM.TEXT7.VALUE=“ ” THISFORM.TEXT8.VALUE=“ ” THISFORM.TEXT9.VALUE=“ ” THISFORM.TEXT10.VALUE=“” “退出”按钮的click事件代码: THISFORM.release
E,登录系统
“退出系统”按钮的click事件代码:
LOCATE FOR THISFORM.TEXT1.VALUE=ALLTRIM(登陆密码表.用户名)AND THISFORM.TEXT2.VALUE=登陆密码表.密码 IF FOUND()N=MESSAGEBOX(“欢迎使用图书管理信息查询系统!”,48)thisform.release DO form 主菜单表单.SCX ELSE N=MESSAGEBOX('对不起,你不是合法用户!',48)THISFORM.RELEASE ENDIF
“登陆系统”按钮的click事件代码:
M=MESSAGEBOX('你真的要退出吗?',4+16+0)IF M=6 THISFORM.RELEASE QUIT ENDIF
六,体会与收获
任何一个社会组织和企业公司在发展过程中都会产生大量的数据,这些数据的组织存储、分析统计有利于提高企业的发展,有利于提高企业的效率。这些数据的组织和存储就是数据模型,就是数据库应用系统开发的任务。
数据库应用系统开发的过程一般包括可行性研究、需求分析、系统设计、程序编码、程序调试和系统维护六个阶段。根据数据库应用系统的复杂程度,不一定完全刻板地遵守上述步骤,但是,可行性研究、需求分析、系统设计、程序编码、程序调试是不可缺少的。
七。参考文献
1,熊发涯, VFP程序设计。
中国铁道出版社
2.郑玲利,数据库原理与应用案例教程。
北京清华大学出版社 3.宜小平,数据库系统开发实例导航。北京人民邮电出版社 4,龚沛曾,数据库技术与应用(M)。
北京高等教育出版社