图书馆管理系统课程设计报告_第1页
图书馆管理系统课程设计报告_第2页
图书馆管理系统课程设计报告_第3页
图书馆管理系统课程设计报告_第4页
图书馆管理系统课程设计报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE20经济管理学院本科课程设计论文数据库开发与应用课程设计学号:姓名:班级:专业:系别:指导教师:2010年12月目录TOC\o"1-3"第一章引言…………….2第一节课程设计目的 2第二节背景 2第三节定义 2第四节参考资料 3第二章程序系统的组织结构 3第一节程序功能图 3第三章详细设计说明 3第一节模块 4一、数据说明 4二、窗体描述 61.部分代码与截图 6第四章课程设计总结 6第一章引言第一节课程设计目的完成Delphi程序设计课程的教学之后,通过课程设计可以进一步巩固所学知识,加深理解提高动手能力,调试程序的能力,解决问题的能力和实际开发应用的能力,掌握使用Delphi进行系统开发的一般步骤,方法和技巧。本图书管理信息系统是利用计算机管理信息处理的迅速、准确、可靠且具有强大存储能力的突出特点,全面提高图书馆的管理水平和工作效率,并以及时、完整的业务经营资料,为图书馆的及时转换提供一定的支持。本图书管理系统涵盖了两个主要的子系统:信息管理和信息查询。其中信息管理包括四个小德子系统:图书管理、读者管理、借阅管理、退出;信息查询包括:图书查询、读者查询、借阅查询。并通过信息的收集、整理、存储、传递、维护、使用将它们有机地结合起来,提高了工作的准确率和效率。4.预期读者:图书管理员,学生,外界人士。第二节背景说明:软件名称:图书馆管理系统内容:登陆界面、信息管理、信息查询、图书管理、读者管理、借阅管理、图书查询、读者查询、借阅查询、退出。项目的任务提出者:冯彦超开发者:冯彦超测试:本人测试第三节定义关键词:DelphiDelphi是面向对象的开发工具,它是目前开发客户/服务器数据库应用程序的强有力的工具。Delphi目前有两个版本:标准版本和客户/服务器版本。标准版本包含一个BorlandDatabaseEngine的局部拷贝,它允许用户创建能访问Dbase,Paradox和LocalInterBase服务器的数据库应用,它还支持具有ODBC(OpenDatabaseConnecticity)接口的数据库。客户/服务器版本包括BorlandSQLLink,它能直接访问Oracle,SyBase和MicrosoftSQLServer,Informix等多种数据库服务器。第四节参考资料Delphi程序设计教程(第二版)图书管理信息系统的设计流程参考来源:网上下载第二章程序系统的组织结构用一系列图表列出本程序系统内的每个程序(包括每个模块和子程序)的名称,标识符和他们之间的层次结构关系。第一节程序功能图图2.1程序功能图详细设计说明一、数据说明表3.1管理员信息字段名字段类型字段长度字段意义用户号长整型用户名文本8密码文本30表3.2用户信息字段名字段类型字段长度字段说明用户号长整型用户名文本8密码文本20性别文本2院系文本20年级文本4专业文本22班级文本2身份文本10(专科生,本科生,研究生,教师)表3.3读者信息编码读者编码姓名性别IDCardNO12005010101张朝坤男37282476022709122005010102张珂男37280119750101032005010103王一伟男37280119800102042005010104冯彦超男37281980010109252010010105李梦男522427199044182表3.4图书信息CodeNameAuthorPressOutDateCostMemo0KJ20050001Delphi7数据库应用开发飞思科技产品开发中心电子工业出版社2003-1-142KJ20050002Delphi7数据库设计与开发张春林、马成勇、刘均清华大学出版社2003-11-129KJ2005000380例上手Delphi7编程程旭松、许哲平、万重山东电子音像出版社2004-10-128KJ20050006信息技术基础教育浙江教育出版社2003-6-30无表3.5借书证信息字段名字段类型字段长度字段说明借书证号长整型姓名文本8类别文本6(专,本,研,教师)可借数量字节根据类别界定已借数量字节身份证文本20家庭住址文本50有效标志布尔有效true挂失false表3.6查询借阅基本信息字段名字段类型字段长度字段说明读者编号长整型读者姓名文本8性别文本(男,女)书号长整型借阅日期日期/时间根据类别界定借阅时长日期/时间身份证号文本20二、窗体描述1.部分代码与截图:unitUnit1;interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,DB,DBTables,StdCtrls;typeTForm1=class(TForm)Label1:TLabel;Label2:TLabel;Edit1:TEdit;Edit2:TEdit;Button1:TButton;Button2:TButton;DataSource1:TDataSource;Table1:TTable;procedureButton1Click(Sender:TObject);procedureButton2Click(Sender:TObject);private{Privatedeclarations}public{Publicdeclarations}end;varForm1:TForm1;implementationusesmain;{$R*.dfm}procedureTForm1.Button1Click(Sender:TObject);beginif(table1.fields[0].value=Edit1.Text)and(table1.fields[1].value=Edit2.Text)thenmainform.Showelseshowmessage('错误');end;procedureTForm1.Button2Click(Sender:TObject);beginform1.Close;end;图3.1系统登录图3.2数据库开发与应用课程设计主界面窗体描述:当在登陆界面输入用户名和密码后就到达此界面;用户名:1234密码:1234图3.3图书管理图书管理按钮的代码:procedureTbookform.Button1Click(Sender:TObject);begin//检查新入库图书的书号是否长度是否为10ifLength(CodeEdit.Text)<>10thenbeginmessagedlg('书号不正确',mtError,[mbok],0);CodeEdit.SetFocus;exit;end;//检查书号是否已经存在withdataModuleAdo.adoquery1dobeginsql.clear;sql.Add('selectcodefrombookwherecode=:code');parameters.ParamByName('code').Value:=codeedit.Text;open;ifrecordcount<>0thenbeginmessagedlg('书号<'+codeedit.Text+'>已经存在',mtError,[mbok],0);codeedit.SetFocus;exit;end;close;end;trywithdatamoduleado.ADOQuery1dobeginsql.Clear;sql.Add('insertintobook(code,name,author,press,outdate,cost,memo0)'+'values(:code,:name,:author,:press,:outdate,:cost,:MMEMO)');parameters.ParamByName('code').Value:=codeedit.Text;parameters.ParamByName('name').Value:=nameedit.Text;parameters.ParamByName('author').Value:=authoredit.Text;parameters.ParamByName('press').Value:=pressedit.Text;tryparameters.ParamByName('outdate').Value:=strtodate(outtimeedit.Text);exceptmessagedlg('参数<出版时间>设置错误',mtError,[mbok],0);exit;end;tryparameters.ParamByName('cost').Value:=strtofloat(costedit.Text);exceptmessagedlg('参数<价格>设置错误',mtError,[mbok],0);exit;end;tryparameters.ParamByName('MMEMO').Value:=memo1.Text;exceptmessagedlg('memoerro',mterror,[mbok],0);exit;end;execSQL;end;Tabsheet1show(sender);exceptmessagedlg('入库错误',mtError,[mbok],0);end;end;图3.4读者管理读者管理按钮代码procedureTMainform.Button1Click(Sender:TObject);beginbookform.show;end;procedureTMainform.Button2Click(Sender:TObject);beginreaderform.show;end;procedureTMainform.Button3Click(Sender:TObject);beginlendform.show;end;procedureTMainform.Button4Click(Sender:TObject);beginclose;end;procedureTMainform.Button5Click(Sender:TObject);beginqueryform.show;end;procedureTMainform.Button6Click(Sender:TObject);beginbutton5click(sender);end;procedureTMainform.Button7Click(Sender:TObject);beginbutton5click(sender);end;end.图3.5借阅管理借阅管理按钮代码:procedureTlendform.FormShow(Sender:TObject);vari:integer;beginwithdatamoduleado.ADOQuery1dobeginsql.Clear;sql.Add('selectcodefrombook');open;first;fori:=0torecordcount-1dobegincombobox1.Items.Add(fieldbyname('code').AsString);next;end;close;end;end;procedureTlendform.ComboBox1Change(Sender:TObject);varfdate:tdate;owntime:Tdate;beginreaderidedit.Text:='';totaledit.Text:='';owntimeedit.Text:='';fineEdit.Text:='';iflength(combobox1.Text)=10thenbegintrywithdatamoduleado.ADOTable1dobegintablename:='book';dbname.DataField:='name';dbauthor.DataField:='author';dbpress.DataField:='press';dboutdate.DataField:='outdate';dbcost.DataField:='cost';dbmemo.DataField:='memo0';active:=true;ifnotlocate('code',combobox1.Text,[])thenbeginmessagedlg('没有数据或数据库操作失败',mterror,[mbok],0);exit;end;end;exceptmessagedlg('数据操作出错',mterror,[mbok],0);end;trywithdatamoduleado.ADOQuery1dobeginsql.Clear;sql.Add('select*fromlendwherecode=:code');parameters.ParamByName('code').Value:=combobox1.Text;open;ifrecordcount<>0thenbeginfdate:=fieldbyname('outdate').AsDateTime;owntime:=date-fdate;owntimeedit.Text:=floattostr(owntime);readerIDEdit.Text:=fieldbyname('readerid').AsString;statictext1.Visible:=true;owntimeedit.Visible:=true;ifstrtoint(owntimeedit.Text)>60thenbeginstatictext12.Visible:=true;fineedit.Visible:=true;fineedit.Text:=floattostr((strtoint(owntimeedit.Text)-60)*0.1);end;button1.Enabled:=false;button2.Enabled:=true;button2.SetFocus;close;endelsebeginreaderidedit.SetFocus;button1.Enabled:=true;button2.Enabled:=false;end;end;exceptreaderidedit.SetFocus;end;end;end;procedureTlendform.ComboBox1KeyDown(Sender:TObject;varKey:Word;Shift:TShiftState);beginifkey=13thencombobox1change(sender);end;procedureTlendform.ReaderIDEditChange(Sender:TObject);beginiflength(readerIDEdit.Text)=10thenbeginwithdatamoduleADO.ADOQuery1dobeginsql.Clear;sql.Add('selectreaderidfromreaderwherereaderid=:readerid');parameters.ParamByName('readerid').Value:=readeridedit.Text;open;ifrecordcount=0thenbeginbutton1.Enabled:=false;messagedlg('借书证号<'+readeridedit.Text+'>不存在',mterror,[mbok],0);close;exit;end;close;end;trywithdatamoduleado.ADOQuery1dobeginsql.Clear;sql.Add('selectcount(readerid)fromlendwherereaderid=:readerid');parameters.ParamByName('readerid').Value:=readeridedit.Text;open;totaledit.Text:=inttostr(fields[0].Value);close;end;excepttotaledit.Text:='0';end;button2.Enabled:=false;button1.Enabled:=true;button1.SetFocus;end;end;procedureTlendform.Button1Click(Sender:TObject);vartempownbook:townbook;canlend:boolean;mmcode:string;beginifreaderidedit.Text<>''thenbegintrywithdatamoduleado.adoquery1dobeginsql.clear;sql.Add('selectcodefromlendwherereaderid=:readerid');parameters.ParamByName('readerid').Value:=readeridedit.Text;open;canlend:=true;ownbookform.ListView1.Items.Clear;mmcode:=fieldbyname('code').AsString;whilenoteofdobeginwithtempadoquery1dobeginsql.Clear;sql.Add('select*frombookwherecode=:code');parameters.ParamByName('code').Value:=mmcode;open;tempownbook.code:=fieldbyname('code').asstring;:=fieldbyname('name').asstring;tempownbook.price:=fieldbyname('cost').asstring;trywithtempadoquery2dobeginsql.Clear;sql.Add('select*fromlendwherecode=:codeandreaderid=:readerid');parameters.ParamByName('code').Value:=datamoduleado.ADOQuery1.fieldbyname('code').AsString;parameters.ParamByName('readerid').Value:=readeridedit.Text;open;tempownbook.owndays:=round(date-fieldbyname('outdate').AsDateTime);close;end;excepttempownbook.owndays:=0;end;close;end;iftempownbook.owndays>60thenbeginwithownbookform.listview1.Items.adddobegincaption:=tempownbook.code;subitems.add();subitems.add(tempownbook.price);subitems.Add(inttostr(tempownbook.owndays));subitems.Add(floattostr((tempownbook.owndays-60)*0.1));end;canlend:=false;end;next;end;close;end;exceptcanlend:=true;end;ifcanlend=falsethenbeginownbookform.Caption:=readeridedit.text+'有以下书籍没按时归还';ownbookform.showmodal;exit;end;trywithDatamoduleADO.adoquery1dobeginsql.clear;sql.add('insertintolend(code,readerid,outdate)'+'values(:code,:readerid,:outdate)');parameters.parambyname('code').value:=combobox1.text;parameters.parambyname('readerid').value:=readeridedit.text;parameters.parambyname('outdate').value:=datetostr(now());execsql;end;exceptmessagedlg('借书不成功',mterror,[mbok],0);end;endelsebeginshowmessage('请输入借书证号!');readeridedit.setfocus;end;end;procedureTlendform.Button2Click(Sender:TObject);begintrywithdatamoduleado.adoquery1dobeginsql.clear;sql.add('deletefromlendwhere

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论