经济管理学院

上传人:jkl****17 文档编号:171109914 上传时间:2022-11-24 格式:DOC 页数:24 大小:1.07MB
返回 下载 相关 举报
经济管理学院_第1页
第1页 / 共24页
经济管理学院_第2页
第2页 / 共24页
经济管理学院_第3页
第3页 / 共24页
点击查看更多>>
资源描述
分类编号 经济管理学院 数据库综合训练课程设计课程设计题目图书管理系统专 业 班 级信息管理与信息系统032班学 生 姓 名王海洲学 号030201207指 导 教 师瞿英张冬丽2006年 4 月 6 日目录1.问题描述.21.1背景21.2数据需求21.3事务需求22.解决方案.22.1 E-R模型设计.22.2 设计数据库32.2.1创建数据库.32.2.2创建数据表.32.2.3连接数据库.42.3主窗体设计.52.3.1设计登录界面52.3.2添加数据组件52.3.3生成数据集52.3.4设计代码52.4读者信息.52.4.1设计显示界面52.4.2添加数据组件62.4.3功能实现62.5显示报表.62.5.1添加读者信息报表62.5.2添加借阅情况报表72.6综合查询的实现.72.6.1添加数据组件72.6.2窗体功能实现83.系统实现.83.1开发环境83.2系统流程图83.3程序调试情况83.4 功能显示.83.5 结论.114.结束语11附录:源代码清单.111.问题描述(宋体四号字,加粗)1.1背景(宋体小四号字,加粗)本系统利用VB.NET处理数据库的功能,实现对图书馆信息的管理。主要功能为管理有关读者、出版社、书籍、借阅和管理者的信息等。本系统的结构分为读者信息管理模块、出版社信息管理模块、书籍信息管理模块、借阅信息管理模块、管理者管理信息模块、报表显示模块和查询处理模块。1.2数据需求根据系统的需求,首先将要记录的信息分类,要记录的信息如下。(1)读者信息:包括证号、姓名、联系方式、已借书数目、读者类别和能否借书等。(2)出版社信息:包括名称、地址、网址、E-mail等。(3)书籍信息:包括书号、丛书系列、作者、责任编辑、字数、定价、出版时间、主题分类、二级分类、馆内借阅分类、总册数、库存量、出版社和书名等。(4)借阅信息:包括借阅日期、应归还日期、实际归还日期、能否续借、书号和证号等。(5)管理者信息:包括管理者名称、对应密码和对应权限等。根据这些需要,本系统需要“读者信息”表,“出版社信息”表,“书籍信息”表,“借阅信息”表和“管理者信息”表。1.3事务需求(1)在读者信息管理部分,要求如下。可以浏览读者信息。可以对读者信息进行维护,包括添加及删除等操作。(2)在出版社信息管理部分,要求如下。可以浏览出版社信息。可以对出版社信息进行维护,包括添加及删除等操作。(3)在书籍信息管理部分,要求如下。可以浏览书籍信息。可以对书籍信息进行维护,包括添加及删除等操作。(4)在借阅信息管理部分,要求如下。可以浏览借阅信息。可以对借阅信息进行维护操作。(5)在管理者信息管理部分,要求如下。显示当前数据库中管理者情况。对管理者信息维护操作。2.解决方案2.1 E-R模型设计该系统的E-R模型如图1所示。图1 - 图书管理系统E-R模型2.2 设计数据库2.2.1创建数据库(1)在服务器资源管理器中的任一节点右击。(2)执行快捷菜单中的“新建数据库”命令,并在打开的“创建数据库”对话框中输入数据库名Library,选中“使用WindowsNT集成安全性”单选按钮。(3)单击“确定”按钮,则新建的数据库就会出现在服务器上。2.2.2创建数据表创建数据库后,为Library数据库添加数据表,步骤如下。(1)在服务器资源管理器中右击数据库Library下的“表”文件夹。在弹出的快捷菜单中执行“新建表”命令,出现表设计器。(2)添加表的字段和其他详细资料。各表数据结构如表1所示。表名列名数据类型长度出版社信息出版社char50地址char50网址char50E-mailchar50读者信息证号int4姓名varchar20联系方式varchar50已借书数目int4读者类别int4能否借书bit1密码varchar6借阅信息书号char10证号int4借阅日期datetime8应归还日期datetime8实际归还日期datetime8续借bit1书籍信息书号char10丛书系列nchar50作者nchar50责任编辑nchar50字数int4定价money8出版时间datetime8主题分类nchar50二级分类char50馆内借阅分类int4总册数char10库存量int4出版社char50书名char50管理者信息用户名称20密码20权限20表1 - 图书管理系统各表数据结构2.2.3连接数据库为数据库Library和本系统之间建立一个数据连接。(1)在服务器资源管理器中右击“数据连接”节点。在弹出的快捷菜单中执行“添加连接”命令,打开Data Link Properties对话框。切换到Provider选项卡,选中列表框中的Microsoft OLE DB Provider for SQL Server项。单击“下一步”切换到Connection选项卡。(2)在其中的第一个下拉列表框中选择数据库所在服务器名称。输入登录服务器信息后选择数据库Library,然后单击Test Connection按钮。如果测试成功,单击“确定”按钮。2.3主窗体设计创建一个新的“Windows应用程序”类型的项目,名为“图书馆管理”。将默认创建的窗体命名为“主窗体”,把“主窗体”作为本系统中的主界面。在窗体中添加两个Pannel控件,7个Button控件和7个Linklabel控件。2.3.1设计登录界面设计登录界面创建一个新的”Windows窗体”,名为Login,作为本系统的登录界面.在Login窗体上添加两个Label控件,两个Button控件和两个TextBox控件,添加控件后的窗体如图所示。2.3.2添加数据组件在工具箱中单击“数据”选项卡,添加OleDbDataAdapter组件。(1)在工具箱中单击OleDbDataAdapter组件,在窗体任意位置拖动出一个虚框矩形后释放左键弹出“数据适配器配置向导”对话框。(2) 单击“下一步”,在打开的对话框中选择前面建好的数据连接,然后单击“下一步”。(3)选中“使用SQL语句”,然后单击“下一步”进入“生成SQL语句”对话框。(4)在其中的多行文本框直接输入SQL语句“SELECT 管理者信息.* FROM 管理者信息”。(5)单击“下一步”按钮,进入“查看向导结果”,单击“完成”按钮完成数据适配器配置。配置数据适配器后,在主窗体上就会自动添加一个OleDbConnection控件。2.3.3生成数据集生成数据集的步骤如下:(1)单击OleDbDataAdapter控件“属性”对话框中的“生成数据集”链接,打开“生成数据集”对话框。(2)在其中选中“新建”单选按钮,并在其后面的文本框中输入“Lib管理者信息”。(3)在“选择要添加到数据集中的表”列表框中列出了前面添加的OleDbDataAdapter组件所连接的表,选中该表名前面的复选框。(4)选中“将此数据集添加到设计器”复选框,单击“确定”按钮这样,将生成一个名称为“Lib管理者信息”的数据集,该数据集以文件形式存储,文件名为“Lib管理者信息.xsd”。而在项目中,添加了一个DataSet组件,名为“objLib管理者信息”。在解决方案资源管理器中右击该项目,在弹出快捷菜单中单击“属性”菜单项。在打开的“属性页”对话框中的“启动对象”下拉列表框中选择“主窗体”选项。单击“确定”按钮,这样该项目启动时,就会从主窗体开始启动。2.3.4设计代码在程序运行过程中,如果想通过单击LinkLabel控件或Button控件进入系统中的各个功能模块(如显示读者信息等),就会弹出一个对话框要求输入用户名和密码.单击确认按钮,程序就会到数据库的管理者信息表中查找该用户名和密码是否存在.如果存在,允许进入功能模块.完成登录功能的主要代码集中在UserCheck函数中.在程序运行过程中,在Login窗体的用户姓名和用户密码文本框中输入用户名和密码后,单击确认按钮就会触发UserCheck函数并执行其中的代码.如果UserCheck函数返回True,那么允许用户的操作;否则拒绝用户的操作请求.在UserCheck函数中首先定义Login类型的变量dlg_Login,然后通过ShowDialog方法来显示登录窗体.如果用户在登录窗体中输入用户姓名和密码,并且单击了确认按钮,那么自动调用一个自定义函数LoadDataSet(),由此函数进行数据加载.如果出错,显示错误信息,回滚整个事务.具体设计代码见附录1.1。2.4读者信息在当前项目中添加一个“Windows窗体”,将窗体命名为“读者信息”。2.4.1设计显示界面在窗体上添加1个GroupBox控件,9个Button控件,5个TextBox控件,1个CheckBox控件和7个Label控件。各按钮控件是为了执行相应的操作。各TextBox控件和CheckBox控件用来显示数据集中的数据,这个功能通过设置DataBindings属性来实现。2.4.2添加数据组件向窗体添加OleDbConnection组件,命名为OleDbConnection1后将其选中,在“属性”对话框的ConnectionString栏单击,选择所建数据库Library。添加OleDbDataAdapter组件和生成数据集的方法步骤如2.3.2及2.3.3。设置各TextBox控件的DataBinding属性来实现对数据集中数据的显示(以Edit证号为例)。(1)选中“Edit证号”控件单击“属性”对话框。(2)单击DataBinding属性前面的+号打开该属性的详细列表。(3)设置Text属性:在该属性后面栏中单击并选择所对应字段。(4)设置其他TextBox控件的DataBinding属性。2.4.3功能实现显示数据,添加读者,保存更改,记录定位的实现。具体实现代码见附1.2。“管理者信息”,“出版社信息”,“书籍信息”,“借阅信息”和该模块的设计思路及方法步骤完全一致,在此从略。2.5显示报表在当前项目中添加一个“Windows窗体”,命名为“报表窗体”,该模块显示当前数据库中读者信息和借阅信息的报表。在窗体上添加一个CrystalReportViewer1,它充当报表显示的窗体,然后在窗体中添加一个菜单,菜单中包括两个子菜单项“读者信息”和“借阅信息”。 在程序运行中,如果单击“读者信息”菜单项,就会自动在窗体上显示“读者信息报表.rpt”:如果单击“借阅信息”命令就会自动在窗体上显示“借阅信息报表.rpt”报表。2.5.1添加读者信息报表(1)在开发环境中选择菜单“项目”中的“添加新项”对话框中选择Crystal Report选项。(2)在“名称”文本框中输入报表名“读者信息报表.rpt”,单击“打开”按钮,就会弹出入图所示的“Crystal Report库”对话框。(3)在其对话框中选择“使用报表专家”单选按钮,在“选择专家”列表框中选择“标准”选项,单击“确定”按钮,进入下一步。(4)在弹出的“标准报表专家”对话框中,选择“可用的数据源”列表框中的OLB DB(ADO)选项,就会弹“OLE DB(ADO)”对话框。选择OLB DB提供程序为Microsoft OLE DB Provider for SQL Server,单击“下一步”按钮,显示 “连接信息”对话框。(5)在其中设置连接信息,单击“完成”按钮,返回“标准报表专家”对话框。(6)选择数据源为OLE DB(ADO)中的Library数据库,并且选中其中的“读者信息”表。单击“插入表”按钮,把“读者信息”表插入到报表中,单击“下一步”按钮。(7)在“字段”选项卡中单击“全部添加”按钮,把“读者信息”表中的所有字段添加到报表中,单击“完成”按钮就完成报表的设计。设计完成的“读者信息报表”如图所示。图2 - 读者信息报表效果图2.5.2添加借阅情况报表添加借阅情况报表的过程与添加读者信息报表过程大致相同,不同之处在于插入到报表中的数据表为“读者信息”。2.6综合查询的实现在程序运行过程中,单击主窗体的“综合查询”按钮,就会弹出一个对话框。在其中设置查询条件,根据查询条件从记录集中筛选出所需记录。为此需要在项目中添加一个窗体“综合查询”。还需要设置“CmbBox运算符”控件的Items属性。单击窗体上“CmbBox运算符”控件,然后在“属性”对话框中单击Items栏,就会出现一个按钮,单击按钮,在打开的窗口中如图3所示设置字符串集合编辑器字符串。设置完毕,单击确定按钮。2.6.1添加数据组件在窗体上添加一个OleDbDataAdapter组件,使用数据适配器配置向导对其进行配置。选择数据连接后输入SQL语句“SELECT出版社信息.* FROM 出版社信息”。同样再为窗体添加四个OleDbDataAdapter组件,图3 字符串集合编辑器在生成SQL语句对话框的多行文本框中分别输入SQL语句“SELECT读者信息.* FROM 读者信息”, “SELECT管理者信息.* FROM 管理者信息” ,“SELECT借阅信息.* FROM 借阅信息”, “SELECT书籍信息.* FROM 书籍信息” ,然后单击“完成”按钮,Name属性分别设置为OleDbDataAdapter2,OleDbDataAdapter3,OleDbDataAdapter4,OleDbDataAdapter5完成数据适配器的配置。生成数据集的步骤如下。(1)在OleDbDataAdapter1组件的“属性”对话框中单击“生成数据集”超链接,打开“生成数据集”对话框,选中“新建”按钮并在后面文本框中输入“Lib综合查询”。(2)在“选择要添加到数据集中的表”列表框中,选中5个表前面的复选框。(3)选中“将此数据集添加到设计器”复选框,单击“确定”按钮。这样,将生成一个名称为“Lib综合查询”的数据集,该数据集以文件的形式存储,文件名为“Lib综合查询.xsd”。而在项目中,添加一个DataSet组件,名称为“objLib综合查询”。设计完成的数据集如图4所示。2.6.2窗体功能实现具体功能实现代码见附1.7。-图4 综合查询数据集3.系统实现3.1开发环境本系统使用VisualBasic.NET语言进行开发。需要Microsoft .NET Framework SDK v1.1的支持。适用内存不低于256M配备有Windows2000,Windows2003,WindowsXP系统的计算机。3.2系统流程图在本系统中准备通过如下窗体来实现数据维护的功能。(1)主窗体:管理着各个子窗体。(2)“读者信息”子窗体:管理读者信息。(3)“管理者信息”子窗体:管理用户信息。(4)“出版社信息”子窗体:管理出版社信息。(5)“书籍信息”子窗体:管理书籍信息。(6)“借阅信息”子窗体:管理借阅信息。(7)“报表窗体”子窗体:显示数据报表。(8)“综合查询”子窗体:执行用户自定义的查询。系统流程图如图5所示: 图5 系统流程图3.3程序调试情况在数据连接时一定要注意窗体和相应显示控件的绑定关系。在把系统从一台计算机移植到另一台计算机时一定要把数据文件library.mdf和library_log.LDF同时移植,并对相应的提供服务的SQL Server服务器进行相应的修改,否则数据正确连接并显示。3.4 功能显示运行程序后首先显示主窗体,如图6所示。单击“输入/查看读者信息”,就会弹出如图7所示登录框。图6 主窗体页面图7 Login窗体在登录对话框中输入用户姓名和密码,单击“确认”按钮,就会对用户身份进行认证,如果认证通过,那么就会弹出如图8所示的读者信息管理窗体。在“读者信息”窗体中可以对读者信息进行维护操作,例如浏览读者信息,添加记录和删除记录等。- 图8 读者信息窗体单击“输入/查看书籍信息”,就会显示“书籍信息”窗体,在该窗体中可以对书籍信息进行维护操作。书籍信息维护窗体如图9所示。- 图9 书籍信息窗体单击“输入/查看借阅信息”,就会显示“借阅信息”窗体,在该窗体中可以对出版社信息进行维护操作。出版社信息维护窗体如图所示。- 图10 借阅信息窗体单击“输入/查看出版社信息”,就会显示“出版社信息”窗体,在该窗体中可以对借阅信息进行维护操作。借阅信息维护窗体如图所示。- 图11 出版社信息窗体单击“输入/查看管理者信息”,结果如图所示。- 图12 管理者信息窗体在主窗体上单击“显示报表”,那么就可以查看反映读者信息和借阅信息的报表,借阅信息的报表如图所示。- 图13 报表窗体如果用户在运行的主窗体上单击“综合查询”,那么就可以查看针对不同的数据表进行查询操作。选择查询依据为“出版社信息”表查看其中的所有信息,结果如图所示。- 图14 综合查询窗体3.5 结论在这个系统的开发过程中,值得注意的几点有:(1)数据报表的实现.报表是数据库应用程序的重要组成部分,通过报表,可以把数据库中内容经过组织以后生动地展示给用户,VB.NET提供的Crystal Report可以大大提高报表的设计效率。(2)复杂查询的实现。在程序运行过程中,单击窗体中的“综合查询”按钮,就会弹出一个对话框,在该对话框中设置查询条件,根据查询条件从记录集中筛选出所需记录,所指定的查询条件包括查询的依据,排序的依据,运算符等等。4.结束语通过做课程设计,有几点感想,经过整理如下。1. 扎实的基础。如果不掌握他们,很难写出高水平的程序。而这一点又是我们所缺乏的。 2. 不钻牛角尖。当遇到障碍的时候,暂时远离电脑,当重新开始工作的时候,也许会发现那些难题现在竟然可以迎刃而解。 3. 多与别人交流。三人行必有我师。 4. 良好的编程风格。注意养成良好的习惯,代码的缩进编排,变量的命名规则要始终保持一致。如果注释和代码不一致,那就更加糟糕。 附录:源代码清单附1.1主窗体设计代码如下:Public Class 主窗体 Inherits System.Windows.Forms.Form#Region Windows 窗体设计器生成的代码 此处省略主窗体设计代码#End Region Dim sender As System.Object Dim e As System.EventArgs Public Sub LoadDataSet() Dim objDataSetTemp As 图书馆管理.Lib管理者信息 objDataSetTemp = New 图书馆管理.Lib管理者信息 临时数据集objDataSetTemp保存从FillDataSet()函数调用中返回的记录 如果未出错则填充到主数据集 objLib管理者信息中 Try Me.FillDataSet(objDataSetTemp) Catch eFillDataSet As System.Exception Throw eFillDataSet End Try Try objLib管理者信息.Clear() objLib管理者信息.Merge(objDataSetTemp) Catch eLoadMerge As System.Exception Throw eLoadMerge End Try End Sub Public Sub FillDataSet(ByVal dataSet As 图书馆管理.Lib管理者信息) 实现打开连接,将OleDbDataAdapter1中的数据添加到数据集,关闭连接。 dataSet.EnforceConstraints = False Try Me.OleDbConnection1.Open() Me.OleDbDataAdapter1.Fill(dataSet) Catch fillException As System.Exception Throw fillException Finally dataSet.EnforceConstraints = True Me.OleDbConnection1.Close() End Try End Sub Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click End Sub Private Sub LinkLabel_退出_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_退出.LinkClicked End End Sub Private Sub LinkLabel_读者信息_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_读者信息.LinkClicked btn_读者信息_Click(sender, e) End Sub Private Sub LinkLabel_书籍信息_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_书籍信息.LinkClicked btn_书籍信息_Click(sender, e) End Sub Private Sub 主窗体_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load End Sub Private Sub LinkLabel_出版社信息_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_出版社信息.LinkClicked btn_出版社信息_Click(sender, e) End Sub Private Sub LinkLabel_借阅信息_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_借阅信息.LinkClicked btn_借阅信息_Click(sender, e) End Sub Private Sub LinkLabel_查询_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_查询.LinkClicked btn_查询_Click(sender, e) End Sub Private Sub LinkLabel_报表_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_报表.LinkClicked btn_报表_Click(sender, e) End Sub Private Sub LinkLabel_管理者信息_LinkClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel_管理者信息.LinkClicked btn_管理者信息_Click(sender, e) End Sub Function UserCheck(ByVal sender As System.Object, ByVal e As System.EventArgs) As Boolean Dim dlg_Login As Login dlg_Login = New Login If (dlg_Login.ShowDialog = DialogResult.OK) Then Try Me.LoadDataSet() Catch eLoad As System.Exception System.Windows.Forms.MessageBox.Show(eLoad.Message) End Try Dim i As Integer Me.BindingContext(objLib管理者信息, 管理者信息).Position = 0 For i = 0 To Me.BindingContext(objLib管理者信息, 管理者信息).Count - 1 If Not Me.BindingContext(objLib管理者信息, 管理者信息).Current.GetType Is GetType(DataRowView) Then Exit For End If Dim drv As DataRowView = CType(Me.BindingContext(objLib管理者信息, 管理者信息).Current, DataRowView) If Trim(drv(用户名称) = dlg_Login.Txt_用户姓名.Text Then If Trim(drv(密码) = dlg_Login.Txt_用户密码.Text Then Return True End If End If Me.BindingContext(objLib管理者信息, 管理者信息).Position += 1 Next End If UserCheck = False End Function Private Sub btn_读者信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_读者信息.Click If UserCheck(sender, e) Then Dim dlg As 读者信息 dlg = New 读者信息 dlg.ShowDialog() Else MessageBox.Show(登录失败!, 登录, MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End If End Sub Private Sub btn_书籍信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_书籍信息.Click If UserCheck(sender, e) Then Dim dlg As 书籍信息 dlg = New 书籍信息 dlg.ShowDialog() Else MessageBox.Show(登录失败!, 登录, MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End If End Sub Private Sub btn_出版社信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_出版社信息.Click If UserCheck(sender, e) Then Dim dlg As 出版社信息 dlg = New 出版社信息 dlg.ShowDialog() Else MessageBox.Show(登录失败!, 登录, MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End If End Sub Private Sub btn_借阅信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_借阅信息.Click If UserCheck(sender, e) Then Dim dlg As 借阅信息 dlg = New 借阅信息 dlg.ShowDialog() Else MessageBox.Show(登录失败!, 登录, MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End IfEnd SubPrivate Sub btn_退出_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_退出.Click End End Sub Private Sub btn_查询_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_查询.Click If UserCheck(sender, e) Then Dim dlg As 综合查询 dlg = New 综合查询 dlg.ShowDialog() Else MessageBox.Show(登录失败!, 登录, MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End If End Sub Private Sub btn_报表_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_报表.Click If UserCheck(sender, e) Then Dim dlg As 报表窗体 dlg = New 报表窗体 dlg.ShowDialog() Else MessageBox.Show(登录失败!, 登录, MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End If End Sub Private Sub btn_管理者信息_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_管理者信息.Click If UserCheck(sender, e) Then Dim dlg As 管理者信息 dlg = New 管理者信息 dlg.ShowDialog() Else MessageBox.Show(登录失败!, 登录, MessageBoxButtons.OK, _ MessageBoxIcon.Stop) End If End Sub Private Sub Panel2_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles Panel2.Paint End SubEnd Class附1.2读者信息窗体设计代码如下:Public Class 读者信息 Inherits System.Windows.Forms.Form#Region Windows 窗体设计器生成的代码 此处省略主窗体设计代码#End Region Private Sub GroupBox_Enter(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles GroupBox.Enter End Sub Private Sub edit证号_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles edit证号.TextChanged End Sub Private Sub OleDbDataAdapter1_RowUpdated(ByVal sender As System.Object, ByVal e As System.Data.OleDb.OleDbRowUpdatedEventArgs) Handles OleDbDataAdapter1.RowUpdated End Sub Private Sub 读者信息_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try Me.LoadDataSet() Catch eLoad As System.Exception System.Windows.Forms.MessageBox.Show(eLoad.Message) End Try Me.objLib读者信息_PositionChanged() End Sub Public Sub LoadDataSet() Dim objDataSetTemp As 图书馆管理.Lib读者信息 objDataSetTemp = New 图书馆管理.Lib读者信息 临时数据集objDataSetTemp保存从FillDataSet()函数调用中返回的记录 如果未出错则填充到主数据集 objLib读者信息中 Try Me.FillDataSet(objDataSetTemp) Catch eFillDataSet As System.Exception Throw eFillDataSet End Try Try objLib读者信息.Clear() objLib读者信息.Merge(objDataSetTemp) Catch eLoadMerge As System.Exception Throw eLoadMerge End Try End Sub Public Sub FillDataSet(ByVal dataSet As 图书馆管理.Lib读者信息) 实现打开连接,将OleDbDataAdapter1中的数据添加到数据集,关闭连接。 dataSet.EnforceConstraints = False Try Me.OleDbConnection1.Open() Me.OleDbDataAdapter1.Fill(dataSet) Catch fillException As System.Exception Throw fillException Finally dataSet.EnforceConstraints = True Me.OleDbConnection1.Close() End Try End Sub Private Sub objLib读者信息_PositionChanged() Me.lblNavLocation.Text = (Me.BindingContext(objLib读者信息, _读者信息).Position + 1).ToString + 的) _+ Me.BindingContext(objLib读者信息, 读者信息).Count.ToString) End Sub Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click 首先清除控件中的内容然后调用AddNew方法添加新记录如果出错显示信息 调用函数显示记录数和当前记录位置 Try Me.BindingContext(objLib读者信息, 读者信息).EndCurrentEdit() Me.BindingContext(objLib读者信息, 读者信息).AddNew() Catch eEndEdit As System.Exception System.Windows.Forms.MessageBox.Show(eEndEdit.Message) End Try Me.objLib读者信息_PositionChanged() End Sub Private Sub btnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpdate.Click 将在窗体中对数据的更改保存到数据库中 Try Me.UpdateDataSet() Catch eUpdate As System.Exception System.Windows.Forms.MessageBox.Show(eUpdate.Message) End Try Me.objLib读者信息_PositionChanged() End Sub Public Sub UpdateDataSet() Dim objDataSetChanges As 图书馆管理.Lib读者信息 = _ New 图书馆管理.Lib读者信息 创建一个新数据集来保存对主数据集所做的更改 Me.BindingContext(objLib读者信息, 读者信
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 商业计划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!