资源描述
作者:Pan Hon glia ng仅供个人学习广州大学学生实验报告开课学院及实验室:电子信息楼617日期:2013年12月19学院机械与电气 工程年级、专业、班电信112姓名孔志荣学号1107400052实验课程名称 实验项目 名称VB实验实验三:简易信息管理系统的设计与实现成绩指导老师系统框架设计部分图书馆需要管理其各种人员和图书信息,希望实现办公的信息化, 通过建立一个图书管理系统来 管理图书。其完成的功能如下(1) 可以实现图书的登记、借阅管理。(2) 可以实现对图书及读者的各种信息的查询,包括逐个浏览,以及对图书及读者信息的增加、 删除和编辑操作。系统设计部分; 数据流图1 图书管理模块2 读者管理模块登陆信息管理员户表D1读者类别信息读者信息渎者信息*5读者信息*d4读者类别添加 读者信息读者类别信息二D4读者类别编辑事务身份验证添加读者类别*事务分析读者类别管理辑读者类别读者管理读者信息查询读者信息读者信息3 图书借阅管理模块取消完成操作确定身份验证do/输入用户名和密码名或密码正确用户名或密码错误用户图书管理系统=如选择功能借阅管理 选择图书选择读者管理选择图书管理系统设计部分;主窗体代码在本项目中,子菜单事件都是Click事件Private Sub about_Click()Forml.ShowEnd SubPrivate Sub cxdz_Click() frmfi ndreaderi nfo.ShowEnd SubPrivate Sub cxjx_Click()frmfi ndborrowi nfo.ShowEnd SubPrivate Sub cxtx_Click()frmfi ndbook in fo.ShowEnd SubPrivate Sub exit_Click()Un load MeEnd SubPrivate Sub printin for_Click()DataReport1.ShowEnd SubPrivate Sub scdx_Click() frmmodifyreaderi nfo.Show End SubPrivate Sub scdz_Click() frmmodifyreaderstyle.Show End SubPrivate Sub tjdx_Click() frmaddreaderi nfo.Show End SubPrivate Sub tjdz_Click() frmaddreaderstyle.Show End SubPrivate Sub tjgy_Click() frmadduser.ShowEnd SubPrivate Sub tjhx_Click() frmbackbook in fo.ShowEnd SubPrivate Sub tjjx_Click()frmfin dbook in fo.ShowEnd SubPrivate Sub tjts_Click() frmaddbookstyle.ShowEnd SubPrivate Sub tjtx_Click() frmaddbook in fo.ShowEnd SubPrivate Sub xgdx_Click() frmmodifyreaderi nfo.ShowEnd SubPrivate Sub xgdz_Click()frmmodifyreaderstyle.ShowEnd SubPrivate Sub xgtu_Click()frmmodifystyle.ShowEnd SubPrivate Sub xgtx_Click()frmmodifybooki nfo.ShowEnd Sub2、创建各子窗体在此只创建读者信息管理模块添加读者信息模块:Private Sub comma nd1_Click()Dim rs_addreader As New ADODB.RecordsetDim conn As New ADODB.Co nn ectio nDim sql As Stri ngIf Trim(Combo1.Text) = The nMsgBox 请选择读者类别, vbOKOnly + vbExclamation,Combo1.SetFocusExit SubEnd IfIf Trim(Text1.Text) = The nMsgBox 读者姓名不能为空, vbOKOnly + vbExclamation,Text1.SetFocusExit SubEnd IfIf Trim(Text2.Text) = The nMsgBox 读者编号不能为空, vbOKOnly + vbExclamation,Text2.SetFocusExit SubEnd IfIf Not IsDate(Text6.Text) The nMsgBox 请按照 yyyy-mm-dd 格式输入登记日期 , vbOKOnly + vbExclamation,Text6.SetFocusExit SubEnd IfIf Trim(Combo2.Text) = The nMsgBox 请选读者性别, vbOKOnly + vbExclamation,Combo2.SetFocusExit Sub& App.Path &End Ifconn. Ope nprovider=Microsoft.Jet.OLEDB.4.0;data source=database.mdbsql = select * from读者信息 where 读者编号=& Text2.Text & “rs_addreader.Ope n sql, conn, adOpe nKeyset, adLockPessimistic If rs_addreader.EOF The nrs_addreader.AddNewrs_addreader.Fields(O) = Trim(Textl.Text)rs_addreader.Fields(1) = Trim(Text2.Text)rs_addreader.Fields(2) = Trim(Combo2.Text)rs_addreader.Fields(3) = Trim(Combol.Text)rs_addreader.Fields(4) = Trim(Text3.Text)rs_addreader.Fields(5) = Trim(Text4.Text)rs_addreader.Fields(6) = Trim(Text5.Text)rs_addreader.Fields(7) = Trim(Text6.Text) rs_addreader.Fields(8) = 0rs_addreader.UpdateMsgBox 添加读者信息成功!, vbOK On ly, rs_addreader.CloseElseMsgBox 读者编号重复!, vbOKOnly + vbExclamation,Text2.SetFocusrs_addreader.CloseExit SubEnd IfEnd SubPrivate Sub Comma nd2_Click()Un load MeEnd SubPrivate Sub Form_Load()Dim rs_leibie As New ADODB.RecordsetDim conn As New ADODB.Co nn ectio nDim sql As Stri ng& App.Path &图书管理系统database.mdbconn. Ope nprovider=Microsoft.Jet.OLEDB.4.0;data source=database.mdbsql = select * from读者类别”rs_leibie.Open sql, conn, adOpenKeyset, adLockPessimistic rs_leibie.MoveFirstDo While Not rs_leibie.EOFCombol.AddItem rs_leibie.Fields(0)rs leibie.MoveNextLooprs_leibie.CloseCombo2.Addltem 男”Combo2.Addltem 女”End Sub查询读者信息模块:代码:Private Sub comma nd1_Click()Dim rs_fin dreader As New ADODB.RecordsetDim conn As New ADODB.Co nn ectio nDim sql As Stri ngIf Check1.Value = vbChecked The nsql =读者编号=& Trim(Text1.Text & ) & “End IfIf Check2.Value = vbChecked The nIf Trim(sql) = The nsql =读者姓名=& Trim(Text2.Text & ” ) & “Elsesql = sql & and类别=& Trim(Text2.Text & ” ) & “End IfEnd IfIf Check3.Value = vbChecked The nIf Trim(sql) = The nsql =读者类别=& Trim(Combo1.Text & ” ) & “Elsesql = sql & and读者类别=& Trim(Combo1.Text & ” ) & “End IfEnd If& App.Path &conn. Ope nprovider=Microsoft.Jet.OLEDB.4.0;data source=database.mdbIf Trim(sql) = The nMsgBox 请选择查询方式!, vbOKOnly + vbExclamationExit SubEnd Ifsql = select * from读者信息 where & sqlrs_fin dreader.CursorLocati on = adUseClie ntrs_fin dreader.Ope n sql, conn, adOpe nKeyset, adLockPessimisticDataGridl.AllowAddNew = FalseDataGridl.AllowDelete = FalseDataGridl.AllowUpdate = FalseIf rs_fin dreader.RecordCo unt = 0 The nMsgBox 查询不至U该图书信息 r1, vbOKOnly + vbExclamationElseSet DataGridl.DataSource = rs_fin dreaderEnd IfEnd SubPrivate Sub Comma nd2_Click()Un load MeEnd SubPrivate Sub Form_Load()Dim rs_find As New ADODB.RecordsetDim conn As New ADODB.Co nn ecti onDim sql As Stri ng& App.Path &sql = select * from读者类别”conn. Ope nprovider=Microsoft.Jet.OLEDB.4.0;data source=database.mdbrs_find.Open sql, conn, adOpenKeyset, adLockPessimisticrs_fin d.MoveFirstIf Not rs_fin d.EOF The nDo While Not rs_fin d.EOFCombol.Addltem rs_fin d.Fields(0)rs_fin d.MoveNextLoopCombol.Listl ndex = 0End Ifrs_fin d.CloseEnd Sub读者信息管理模块:代码:Opti on ExplicitDim rs_reader As New ADODB.RecordsetPrivate Sub cmdca ncel_Click()rs_reader.Ca ncelUpdateDataGridl.RefreshDataGridl.AllowAddNew = FalseDataGridl.AllowUpdate = Falsecmddel.E nabled = True cmdmodify.E nabled = True cmdupdate.E nabled = False cmdca ncel.E nabled = FalseEnd SubPrivate Sub cmdmodify_Click()Dim an swer As StringOn Error GoTo cmdmodifycmddel.E nabled = Falsecmdmodify.E nabled = Falsecmdupdate.E nabled = Truecmdca ncel.E nabled = TrueDataGridl.AllowUpdate = TrueExit Subcmdmodify:If Err.Number 0 The nMsgBox Err.DescriptionEnd IfEnd SubPrivate Sub cmdupdate_Click()If Not lsNull(DataGrid1.Bookmark) The nrs_reader.UpdateEnd Ifcmddel.E nabled = Truecmdmodify.E nabled = Truecmdupdate.E nabled = Falsecmdca ncel.E nabled = FalseMsgBox 修改成功!, vbOKOnly + vbExclamation,End SubPrivate Sub cmddel_Click()Dim an swer As StringOn Error GoTo cmddelan swer = MsgBox( 确定要删除吗?, vbYesNo,)If an swer = vbYes ThenDataGrid1.AllowDelete = Truers_reader.Deleters_reader.UpdateDataGrid1.RefreshElseExit SubEnd Ifcmddel:MsgBox Err.Descripti onEnd SubPrivate Sub Form_Load()Dim sql As Stri ngDim conn As New ConnectionOn Error GoTo loaderror& App.Path &conn. Ope nprovider=Microsoft.Jet.OLEDB.4.0;data source=database.mdbsql = select * from读者信息rs reader.CursorLocati on = adUseClie ntrs_reader.Ope n sql, conn, adOpe nKeyset, adLockPessimistic cmdupdate.E nabled = False cmdca ncel.E nabled = FalseDataGrid1.AllowAddNew = FalseDataGrid1.AllowDelete = FalseDataGrid1.AllowUpdate = FalseSet DataGrid1.DataSource = rs_readerExit Subloaderror:MsgBox Err.Descriptio nEnd SubPrivate Sub Form_Unl oad(Ca ncel As In teger)Set DataGrid1.DataSource = Noth ing rs_reader.CloseEnd Sub系统综合调试过程部分修改删除读者信息:查询读者信息总结和体会通过这次课程设计,我们对应用数据库,编程、理解、动手及思维能力有了提高,我编 制的这个程序,基本上实现了题目要求的功能,但是对于一些复杂情况的处理还是不足 的,比如项目一多,运算速度就会变得很慢,甚至也可能出现一些数据处理得错误。这 说明了一种良好的数据结构的选择与设计对一个程序的稳定性是多么的重要,而目前我 们所学的是远远不够的。我们要通过多多练习,实践,增加自己的经验,熟练掌握好软 件工程这门课程,才能开发出符合要求、具有实用性的程序出来。版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理。版权为潘宏亮个人所有This article in eludes someparts, in cludi ng text, pictures, and desig n. Copyright is Pan Hon glia ngs pers onal own ership.用户可将本文的内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律 的规定,不得侵犯本网站及相关权利人的合法权利。除此以外,将本 文任何内容或服务用于其他用途时,须征得本人及相关权利人的书面 许可,并支付报酬。Users may use the contents or services of this articlefor pers onal study, research or appreciati on, and other non-commercial or non-profit purposes, but at the same time, they shall abide by the provisi ons of copyright law and other releva nt laws, and shall n ot infringe upon the legitimate rights of this website and its releva nt obligees. In additi on, when any content or service of this article is used for other purposes, writte n permissi on and remun erati on shall be obta ined from the pers on concerned and the releva nt obligee.转载或引用本文内容必须是以新闻性或资料性公共免费信息为 使用目的的合理、善意引用,不得对本文内容原意进行曲解、修改, 并自负版权等法律责任。Reproducti on or quotatio n of the content of this articlemust be reas on able and good-faithcitati onfor the use of n ewsor in formative public free in formatio n. It shall notmisinterpret or modify the original intention of the contentof this article, and shall bear legal liability such as copyright.
展开阅读全文