VISUAL BASIC 连接数据库综合示例.docx

上传人:牧羊曲112 文档编号:4925853 上传时间:2023-05-23 格式:DOCX 页数:32 大小:1.16MB
返回 下载 相关 举报
VISUAL BASIC 连接数据库综合示例.docx_第1页
第1页 / 共32页
VISUAL BASIC 连接数据库综合示例.docx_第2页
第2页 / 共32页
VISUAL BASIC 连接数据库综合示例.docx_第3页
第3页 / 共32页
VISUAL BASIC 连接数据库综合示例.docx_第4页
第4页 / 共32页
VISUAL BASIC 连接数据库综合示例.docx_第5页
第5页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《VISUAL BASIC 连接数据库综合示例.docx》由会员分享,可在线阅读,更多相关《VISUAL BASIC 连接数据库综合示例.docx(32页珍藏版)》请在三一办公上搜索。

1、Visual Basic连接数据库综合+示例一、数据库编程应用技术2 -二、数据库控件的使用2 -1. Data控件的使用亍2 -2. ADO控件的使用.-3 -三、ADO对象的使用11 -1. 什么是 ADO- 11 -2. ADO对象的添加 12 -3. ADO对象的具体应用12 -四、 访问SQL Server数据库和数据源18 -1. 怎样连接ODBC数据源18 -2. 连接ODBC数据源-22 -六、 常用的数据库操作举例27 -1. 添加数据记录27 -2. 修改与删除数据记录.-28 -3. 查询数据记录28 -七、 本章小结28 -八、 程序所用到的数据库的制作28 -一、数据

2、库编程应用技术大多数情况下,我们在编写应用程序时都离不开数据库。一个功能强大的应 用软件需要数据库技术的支持。如在前面章节中讲解的多媒体技术的实例中,在 实现保存多媒体文件路径的操作中,就应用到了数据库技术。本章中,我们将详 细地向读者讲解有关数据库处理技术方面的相关知识。主要讲解的知识点有以下几个方面。(1)使用数据库控件操作数据库;(2)使用ADO技术操作数据库;(3)连接SQL Server数据库和ODBC数据源的方法;(3)对数据库的添加、删除、修改及查询等相关的操作。二、数据库控件的使用数据库控件是操作数据库的有效工具,通过使用数据库控件,我们可以实现 连接数据库、向数据库中添加、删

3、除以及查询记录信息等操作。下面就向读者介 绍一下VB 6.0中几个重要数据库控件的使用方法。1. Data控件的使用如果您只是简单地操作下数据库,那么最简单的方法就是使用Data控件了, Data控件的优势在于可以直接建立起数据源并且与文本框或列表等控件直接建 立连接,这样就不必要再编写大量的程序代码,而只是简单地设置下控件的某些 属性就可以操作数据库了。那么,Data控件都有哪些重要的属性和方法呢?请 接着往下看!(1)Connect 属性Connect属性用于设置所要连接数据库的类型。(2)DataBaseName 属性DataBaseName属性用于设置Data控件的数据源,即决定Dat

4、a控件连接的 数据库名称。(3)RecordSource 属性在使用DataBaseName属性设置完数据源之后,还需要设置所要连接的数据 表,在连接完数据表之后,才实现了与数据库之间真正意义上的连接。连接数据 表通过使用Data控件的RecordSource属性来实现。(4)ReadOnly 属性ReadOnly属性具有两个属性,即True和False,当将该属性设置为True时, 可以屏蔽修改数据库内容的功能。(5)Refresh 方法在 DatabaseName 属性、ReadOnly 属性、Connect 属性和 RecordSource 属性 等值发生改变时,可使用Refresh方法

5、实现刷新数据库的功能,即重新打开数据 库。(6)UpdateControl 方法使用该方法可以将Data控件记录集中的当前记录填充到某个数据绑定控件 中UpdateControl使用该方法可以将修改的记录内容保存到数据库中。(7)Recordset在 Recordset对象中,可以通过使用该对象的MoveFirst、MoveNex、MovePrevious和MoveLast方法实现移动数据表中的记录信息的功能。2. ADO控件的使用前面讲解的Data控件只能对Access97版本的数据库进行操作,从这一点就 可以看出,Data控件是非常不适用的。因此,在通常情况下,很少会使用Data 控件编写

6、程序。在VB 6.0中,有一种功能强大而且使用又方便的控件,那就是 ADO控件。通过使用ADO控件,我们可以连接一个本地数据库或远程数据库、 打开一个指定的数据库表或定义一个基于结构化查询语言的查询、将数据字段中 的数值传递给数据绑定控件等数据操作。下面就来学习一下这个功能强大的数据 控件。ADO控件是非标准的控件,在使用时需要通过在“控件”对话框中进行添 加,具体的添加方法为:在工具箱中单击鼠标右键,在弹出的快捷菜单中选择“部 件”命令,并在弹出的“部件”对话框中选取“Microsoft ADO Data Control 6.0” 选项,如图1所示。单击【确定】按钮,将ADO控件添加到工具箱

7、当中。图1将ADO控件添加到工具箱中在添加ADO控件之后,下面介绍ADO控件的一些重要的属性和方法(1) BOFAction 与 EOFAction 属性在移动数据库中的记录指针时,如果记录指针移动到BOF或EOF位置,此 时再向前或再向后移动记录指针将会发生错误。使用BOFAction和EOFAction属 性可以指定当发生上述错误时,数据控件将采取什么样的操作。(2) ConnectionString 属性ConnectionString属性是ADO控件中最重要的属性之一。该属性的作用是 建立数据控件与数据源之间的链接信息。可以使用ConnectionString属性来设置 链接不同的数据

8、库和数据源。如Access数据库和SQL Server数据源。在连接数据库时,需要首先将ConnectionString属性设置为一个有效的链接 字符串。该字符串可以由“数据连接属性”对话框中产生。其具体实现的操作步 骤如下。 在确定将ADO控件添加到工具箱的情况下,首先在窗体上添加一个ADO 控件,选中该控件,在控件的属性窗口中找到控件的ConnectionString属性,单 击最右侧的【.】按钮,将弹出ADO控件的“属性”窗口。使用DSN,则选择“使用ODBC数据源名称”单选按钮,并从列表中选择一个DSN数据源;创建一个连接字符串, 则选择“使用连接字符串”单选按钮,如图2所示。届堆项I

9、X逢接资源r便用DE Link文件鱼*确定取消 |I 帮助1图2 ADO控件的“属性页”窗口 在“属性页”宽口中单击【生成】按钮,将弹出“数据连接属性”窗口, 在该窗口中选择要连接的数据源信息。以连接Access数据库为例,选择Microsoft Jet 4.0 OLE DB Provider”选项,如图 3 所示图3 “数据链接属性”对话框窗口 单击【下一步】按钮,将进入“数据连接属性”窗口中的“连接”选项卡 当中,在该选项卡中的“选择或输入数据库名称”栏内直接输入或使用右侧的【.】 按钮选择数据库的名称,选择完成后单击【确定】按钮,如图4所示图4选择连接的数据库名称 单击【确定】按钮之后,

10、在“属性页”窗口的“使用连接字符串”下面的 文本框中将会生成一个连接字符串,通过使用这个连接字符串可以与相应的数据 库取得连接,如图5所示也可以复制该生成的字符串作为程序代码使用。图5生成的链接数据库字符串(3)RecordSource 属性在使用ConnectionString属性连接完数据库之后,接下来的任务就是连接数 据表。在ADO控件中,连接数据表使用的是RecordSource属性。RecordSource 属性用于设置要连接的数据表或者SQL查询语句。(4)CommandType属性CommandType属性用于指定的取值类型。通常在ADO控件的属性窗口中 可以直接设置该属性值。R

11、ecordSource属性具有以下几个可选择的属性值。 adCmdUnknown:该属性值为默认值,表示CommandText属性中的命令 类型未知。 adCmdTable:表示将CommandText作为由内部生成的SQL查询返回的表 格名称进行计算。 adCmdText :表示将CommandText作为命令或存储过程调用的文本定义 进行计算。 adCmdStoreProc:表示将CommandText作为存储过程名进行计算。(5)UserName 属性为了保证数据的安全性,很多数据库都设置了密码保护。这样,在访问该数 据库时,就需要指定该数据库德用户名和密码,否则无法连接或访问该数据库。

12、(6)Password 属性在连接带密码的数据库时,不但需要指定连接的用户名,还需要指定连接的 密码。指定连接的密码是通过Password属性实现的,与UserName属性类似。 Password属性也可以子啊ConnectionString中指定。(7)ConnectionTimeout 属性ConnectionTimeout属性用于设置等待建立一个连接的时间,该属性以秒为 单位i,如果连接超时,则会产生一个错误信息。(8)AddNew 方法使用AddNew方法可以在ADO控件的记录集中添加一条新的记录。在使用 该方法之后,应该给相应的哥哥字段赋值,然后调用UpdateBatch方法保存信息

13、。(9)Delete 方法使用Delete方法可以删除ADO控件记录集中的一条记录信息。移动记录的方法在使用 ADO 控件时,可以通过使用 MoveFirst、MoveLast、MoveNext、 MovePrevious方法来移动ADO控件记录集中的数据,分别表示为移动到首记录, 移动到最后一条记录,移动到下一条记录和移动到上一条记录。CancelUpdate 方法CancelUpdate方法的作用是取消ADO控件的记录集中的添加或编辑操作, 使数据记录恢复到修前的状态。UpdateBatch 方法UpdateBatch方法的作用是保存ADO控件记录集中添加或编辑操作。该方 法的作用恰好与C

14、ancelUpdate相反。看示例本示例实现的是在程序运行之后,在窗体的文本框中输入相关的数据信息,单击【添加】按钮可以将文本框中的数据信息保存到数据表中。在单击【首记录】、【上一条】、【下一条】和【末记录】按钮时可以移动数据表中的记录信息。如图6。在移动到某一条记录信息之后。单击【删除】按钮可以删除当前的记录信息。示例实现步骤如下。图6使用ADO控件连接数据库新建一个工程,在工程中添加一个窗体Froml,将窗体的Caption属性设置 为“ADO控件连接数据库”。在“部件”对话框中分别添加ADO控件和DataGrid表格控件,如图7所示图7添加ADO控件和DataGrid控件到工具箱中在窗体

15、上添加一个ADO控件和一个DataGrid控件,将DataGrid控件的 DataSource 属性设置为 “Adodcl”。在窗体上添加6个标签控件和6个文本框控件,分别设置标签控件的Caption 属性,使标签能够表示文本框。在窗体上添加6个按钮控件,分别将控件的Caption属性设置为“添加”,“删 除”,“首记录”,“上一条”,“下一条”,“末记录”。进入代码窗口,在代码窗口中添加如下程序代码,实现显示Access数据库 中的数据表的功能。添加新纪录程序代码如下:Private Sub Command1_Click()Adodcl.Recordset.AddNewAdodc1.Reco

16、rdset.Fields(0).Value = Text1.TextAdodc1.Recordset.Fields(1).Value = Text2.TextAdodc1.Recordset.Fields(2).Value = Text3.TextAdodc1.Recordset.Fields(3).Value = Text4.TextAdodc1.Recordset.Fields(4).Value = Text5.TextAdodc1.Recordset.Fields(5).Value = Text6.TextAdodc1.Recordset.UpdateBatchEnd Sub删U除程序代

17、码如下:Private Sub Command2_Click()On Error Resume NextAdodc1.Recordset.DeleteEnd SubPrivate Sub Command3_Click()Adodc1.Recordset.MoveFirstShowTextEnd SubPrivate Sub Command4_Click()If Adodc1.Recordset.BOF ThenMsgBox ”已经到了第一条记录”,vbOKCancel,”提示信息Else: Adodc1.Recordset.MovePreviousEnd IfShowTextEnd SubPr

18、ivate Sub Command5_Click()If Adodc1.Recordset.EOF ThenMsgBox ”已经到了最末一条记录”,vbOKCancel,”提示信息”Else: Adodc1.Recordset.MoveNextEnd IfShowTextEnd SubPrivate Sub ShowText()On Error Resume NextTextl.Text = Adodc1.Recordset.Fields(0).ValueText2.Text = Adodc1.Recordset.Fields(1).ValueText3.Text = Adodc1.Recor

19、dset.Fields(2).ValueText4.Text = Adodc1.Recordset.Fields(3).ValueText5.Text = Adodc1.Recordset.Fields(4).ValueText6.Text = Adodc1.Recordset.Fields(5).ValueEnd SubPrivate Sub Command6_Click()Adodc1.Recordset.MoveLastShowTextEnd SubPrivate Sub Form_Load()Adodc1.ConnectionString = Provider=Microsoft.Je

20、t.OLEDB.4.0;Data Source= & App.Path & MyDatas.mdb;Persist Security Info=False Adodc1.CommandType = adCmdTextAdodc1.RecordSource = select * from 员工信息 order by 编号Adodc1.RefreshShowTextEnd Sub三、ADO对象的使用前面讲解的内容都是使用数据控件对数据表中的数据进行操作。那么,如果 不使用数据控件是否也能操作数据表中的数据信息呢?答案是肯定的。也可以使 用ADO对象来操作数据表中的数据信息,本节中我们将重点讲解一下

21、ADO对 象在VB 6.0中的具体应用。1.什么是ADO在学习ADO对象之前,先来了解一下什么是ADO。ADO的全称为Active Data Objects,它包含了数据库访问对象DAO、远程数据对象RDO及几乎所有 其他数据存取方式的全部功能,可以使用ADO访问各种类型的数据库及数据源。 ADO具有很高的灵活性,它可以使用相同的编程模式连接到不同的数据提供者, 因此,是当前使用最广泛的操作数据库技术之一,受到广大程序员和编程爱好者 的青睐。ADO可以用来同OLE DB Provider (数据访问层)协同工作。OLE DB是一 个低层的数据访问接口,通过该接口可以访问各种数据源,与数据库取得

22、连接。 ADO技术将所有强大的数据处理功能都封装起来,仅仅引用它就可以执行各种 数据操作。2.ADO对象的添加在使用ADO对象之前,需要进行一个重要的操作,那就是将ADO对象引 用到你的工程当中,具体的操作方法如下所示。(1)选择“工程”菜单下的“引用”命令,此时将弹出“引用”对话框窗 口。(2)在“引用”对话框中选择 “Microsoft ActiveX Data Obiects 2.8 Library”, 如图8所示。如果列表中没有该选项,可以选择“Microsoft ActiveX Data Objects 2.6 Library ”选项或更低版本的类型库。图8引用ADO对象(3)单击【

23、确定】按钮之后,ADO对象就被引用到工程当中了。3.ADO对象的具体应用我们平时所说的ADO对象主要包括两部分,即连接数据源Connection对象 和记录集对象Recordset,只要熟练掌握了这两种对象的使用,就可以说已经熟 练掌握ADO对象的使用了。下面就一起来学习一下这两种数据操作对象的使用 方法。(1)连接数据源Connection对象的使用Connection对象的作用是与数据源取得会话连接,在客户端/服务器数据库 系统当中,Connection对象可以看作是到服务器的实际网络连接。(2)记录集对象RecordsetRecordset对象用于返回查询的记录集和记录中的游标,即返回来

24、自基本表 或命令执行结果的记录全集。在ADO对象当中,通过使用Recordset对象可以 实现添加、删除、修改和查询等对数据库的基本操作。为了和ADO控件连接数据库形成对比,同样功能的软件这次用ADO对象 连接,注意对比哦,否则就白忙活了!看示例本示例实现的是在程序运行之后,在窗体的文本框中输入相关的数据信息, 单击【保存】按钮可以将文本框中的数据信息保存到数据表中。在单击【添加】 【删除】、【修改】、【首记录】、【上一条】、【下一条】和【末记录】按钮可实现相 应的功能。如图9所示图9程序运行画面具体实现步骤如下:新建一个工程,在工程中添加一个窗口 Forml,将窗口的Caption属性设置

25、为“ADO对象连接数据库”。在【工程】-【引用】对话框中将ADO对象引用到工程中。具体步骤如上, 这里不复述。在窗体中引用并添加一个MSHFlexGrid控件。如图10图10引用MSHFlexGrid控件到工具面板在窗体中添加六个标签控件和六个文本框控件,如图9分别设置标签控件的Caption 属性。在窗体中添加八个按钮控件,分别将控件的Caption属性设置为“添加”,“删 除”,“修改”,“保存”,“首记录”,“上一条”,“下一条”和“末记录”。在窗体中再添加一个标签控件,用于显示当前记录的位置信息。进入代码窗口,在窗口添加如下程序代码:Dim conn As New ADODB.Conn

26、ection 定义一个数据连接Dim rs As New ADODB.Recordset 定义一个记录集Private Sub Command1_Click()On Error Resume NextText1.Text =Text2.Text =Text3.Text =Text4.Text =Text5.Text =Text6.Text =Text1.SetFocusEnd SubOn Error Resume Nextrs.DeleteSet MSHFlexGridl.DataSource = rsEnd SubPrivate Sub Command3_Click()On Error Re

27、sume Nextm = MsgBox(确定修改吗? ”, vbOKCancel + vbInformation,”提示信息”)If m = vbOK Thenrs.Fields(0).Value = Textl.Textrs.Fields(1).Value = Text2.Textrs.Fields(2).Value = Text3.Textrs.Fields(3).Value = Text4.Textrs.Fields(4).Value = Text5.Textrs.Fields(5).Value = Text6.Textrs.UpdateBatchSet MSHFlexGridl.Dat

28、aSource = rsEnd IfEnd SubPrivate Sub Command4_Click()On Error Resume Nextrs.AddNewrs.Fields(0).Value = Textl.Textrs.Fields(1).Value = Text2.Textrs.Fields(2).Value = Text3.Textrs.Fields(3).Value = Text4.Textrs.Fields(4).Value = Text5.Textrs.Fields(5).Value = Text6.Textrs.UpdateBatchSet MSHFlexGridl.D

29、ataSource = rsEnd SubPrivate Sub Command5_Click()On Error Resume NextIf rs.EOF ThenMsgBox ”已到首数据”,vbCritical + vbOKCancel, ”提示信息”Elsers.MoveFirstShowinfoEnd IfEnd SubOn Error Resume NextIf rs.EOF ThenMsgBox ”已到末数据!”, vbCritical + vbOKCancel, ”提示信息”Elsers.MoveNextShowinfoEnd IfEnd SubPrivate Sub Comm

30、and7_Click()If rs.BOF ThenMsgBox ”已到首数据!,vbOKCancel + vbCritical,”提示信息”Elsers.MovePreviousShowinfoEnd IfEnd SubPrivate Sub Command8_Click()On Error Resume Nextrs.MoveLastShowinfoEnd SubPrivate Sub Form_Load()On Error Resume NextDim i As Integerconn.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source=

31、+ App.Path + MyDatas.mdb;Persist Security Info=False”rs.Open 员工信息, conn, adOpenKeyset, adLockOptimisticSet MSHFlexGrid1.DataSource = rs设置表格大小For i = 0 To 4MSHFlexGrid1.ColWidth(i) = 1200Next iMSHFlexGrid1.ColWidth(5) = 1800MSHFlexGrid1.ColWidth(6) = 1800For i = 0 To MSHFlexGrid1.Rows - 1MSHFlexGrid1

32、.RowHeight(i) = 400Next i设置表格行表头s$ = ;|1|2|3|4|5|MSHFlexGridl.FormatString = s$显示数据表中的记录条数信息Label7.Caption =当前数据表中共有+ Str(rs.RecordCount) + 条记录信息,当前记录位 置为 第+ Str(rs.AbsolutePosition) + 条记录End SubPrivate Function Showinfo()将当前记录信息赋值于文本框On Error Resume NextTextl.Text = rs.Fields(0).ValueText2.Text = r

33、s.Fields(1).ValueText3.Text = rs.Fields(2).ValueText4.Text = rs.Fields(3).ValueText5.Text = rs.Fields(4).ValueText6.Text = rs.Fields(5).ValueLabel7.Caption =当前数据表中共有+ Str(rs.RecordCount) + 条记录信息,当前记录位置 为第+ Str(rs.AbsolutePosition)End Function、访问SQL Server数据库和数据源在学习了前面的相关内容之后,读者可能完全掌握了对Access数据库的访 问及

34、其相关的一些操作。但是,在开发应用程序的过程中,不仅会用到Access 数据库,通常还会用到与SQL Server数据库和数据源之间的连接和操作。本节 的目的就是教会读者学习这方面的相关内容。怎样连接SQL Server数据库将连接SQL Server数据库与连接Access数据库进行比较,除了连接字符串 不同之外,其余的如添加记录、删除记录、修改记录和查询记录的方法和程序代 码都基本相同。因此,在这里只介绍一下如何与SQL Server数据库取得连接, 至于对SQL Server数据库的其他操作,读者只要参照对Access数据库的相关操 作就可以了。1.怎样连接ODBC数据源在对数据库进行操

35、作时,我们可以通过连接字符串连接Access数据库和SQL Server数据库,也可以通过ODBC数据源连接各种类型的数据库。)创建ODBC数据源在连接ODBC数据源之前需要首先创建数据源,如何创建ODBC数据源呢?可以按照如下步骤进行操作。选择【开始】-【控制面板】-【性能和维护】-【管理工具】-【数据源 (ODBC)】命令,然后在“ODBC数据源管理器”对话框窗口中选择“文件DSN” 如图11所示用户DSS :系.统DSN文伴询驱动程序 跟踪 连接池 关于搜索范围: Data Sourcee三色手加可设置目录陞IODBC文件数据源允许用尸芭接到数据提供程序。文件DSS可以由 突装了相同驱劫

36、程萍的用户粉导.图11 ODBC数据源管理器对话框窗口在“文件DSN”选项卡中,单击【添加】按钮,将弹出“创建新数据源” 对话框窗口。在该对话框中的列表中可以选择连接不同类型数据库的启动程序。 这里创建一个连接SQL Server数据库的数据源。因此选择列表中的“SQL Server” 选项,如图12所示。图12选择创建新数据源的驱动程序单击下一步按钮,在弹出的文本框中输入创建新数据源的名称,如图13,单击下一步图13输入创建数据源的名称出现如图14图14刚才配置的数据源单击【完成】出现图15。在窗口中的“服务器”列表框中选择SQL服务器 名称,这里选择“ Local”。图15选择SQL服务器

37、名称继续单击【下一步】按钮,在弹出的窗口选择登陆ID的登录方式(通常选择默认的方式,不用改变),如图16。图16选择登陆ID的登录方式单击【下一步】按钮,此时将弹出选择连接SQL数据库名称的窗口,在该 窗口中的“更改默认的数据库为”列表中选择数据源说连接的SQL数据库名称, 这里选择“ DB_YGXX ”数据库。单击【下一步】,在弹出的窗口中单击【完成】按钮,一个新的文件数据源 MY_ODBC创建完成。2.连接ODBC数据源在数据源创建完成之后,在应用程序中可以通过该数据源连接数据库。下面 通过一个具体的示例来讲解如何通过ODBC数据源连接数据库。vb连接Access数据库的模块以及使用实例我

38、觉得vb的模块与c的头文件有异曲同工之妙,说的不对不要骂我哈都 是在里面加载公共函数供外部调用。看示例就会明白了在这里演示一个,我把“ADO对象连接数据库”的示例改了一下,很简单的,Follow me单击【工程】选择【添加模块】或者在窗体右键选择【添加】【添加模块】1n圄国曰K膨工程1白.密一工程1屈性(I.社添加窗体N泓添加助工窗体GJ樊添加模块瞻部添加类模焕。: 理添加用户控件 苗忝加屋性页(): 勉添加用尸女档WbClassData fLepurtIlHTfilL FagpH=at a Envir “run ent电多ActiveK设计器 海加支件也J.添加他)I朗存另存为.昏打 EH(

39、).P可连接的重藏(W会类序二E国查看代愤一迫)白密模以围查看对象图17添加模块由于是改的,所以直接拿那个示例来用就可以了,具体操作步骤就不复述了看代码模块(Modulel)代码(关闭代码没有用到,仅供参考学习):Public conn As New ADODB.Connection 定义一个数据连接Public rs As New ADODB.Recordset 定义一个记录集Public addFlag As Boolean 判断是否连接上了数据库打开数据库Public Function openconn()On Error Resume Nextconn.ConnectionString

40、 = Provider=Microsoft.Jet.OLEDB.4.0;Data Source= + App.Path +MyDatas.mdb;Persist Security Info=False”conn.Openopenconn = TrueIf conn.State = 1 ThenaddFlag = TrueEnd IfEnd Function关闭数据库,释放连接Public Sub cloCn()On Error Resume NextIf conn.State adStateClosed Thenconn.CloseSet conn = NothingEnd Sub打开对象集P

41、ublic Sub openrs(ByVal strsql As String)以下两句等同rs.Open strsql, conn, adOpenKeyset, adLockOptimisticWith rs.ActiveConnection = conn.CursorLocation = adUseClient.CursorType = adOpenKeyset.LockType = adLockOptimistic.Open strsqlEnd WithEnd Sub关闭对象集Public Sub closers()On Error Resume NextIf rs.State adSt

42、ateClosed Thenrs.CloseSet rs = NothingEnd SubForm 1代码:Private Sub Command1_Click()On Error Resume NextText1.Text =Text2.Text =Text3.Text =Text4.Text =Text5.Text =Text6.Text =Text1.SetFocusEnd SubPrivate Sub Command2_Click()On Error Resume Nextrs.DeleteSet MSHFlexGrid1.DataSource = rsEnd SubPrivate S

43、ub Command3_Click()On Error Resume Nextm = MsgBox(确定修改吗? ”, vbOKCancel + vbInformation,”提示信息”)If m = vbOK Thenrs.Fields(0).Value = Textl.Textrs.Fields(1).Value = Text2.Textrs.Fields(2).Value = Text3.Textrs.Fields(3).Value = Text4.Textrs.Fields(4).Value = Text5.Textrs.Fields(5).Value = Text6.Textrs.U

44、pdateBatchSet MSHFlexGridl.DataSource = rsEnd IfEnd SubPrivate Sub Command4_Click()On Error Resume Nextrs.AddNewrs.Fields(0).Value = Textl.Textrs.Fields(1).Value = Text2.Textrs.Fields(2).Value = Text3.Textrs.Fields(3).Value = Text4.Textrs.Fields(4).Value = Text5.Textrs.Fields(5).Value = Text6.Textrs

45、.UpdateBatchSet MSHFlexGridl.DataSource = rsEnd SubPrivate Sub Command5_Click()On Error Resume NextIf rs.EOF ThenMsgBox ”已到首数据”,vbCritical + vbOKCancel, ”提示信息”Elsers.MoveFirstCall ShowinfoEnd IfEnd SubPrivate Sub Command6_Click()On Error Resume NextIf rs.EOF ThenMsgBox ”已到末数据!”, vbCritical + vbOKCancel, ”提示信息”Elsers.MoveNextCall ShowinfoEnd IfEnd SubPrivate Sub Command7_Click()If rs.BOF ThenMsgBox ”已到首数据!,vbOKCancel + vbCritical,”提示信息”Elsers.MovePreviousShowinfoEnd IfEnd SubPrivate Function Showinfo()将当前记录信息赋值于文本框On Error Resume NextText1.Text = rs.Fields(0).ValueText2.Text = r

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号