贾保英
摘要:ADO技术是常用的数据库开发技术,VB6.0是简单易用的开发工具,基于VB6.0环境,采用ADO技术对数据库进行开发和维护适用于小型数据库的管理。本文从对象的定义、记录集的操作等方面对其应用进行了阐述。
关键词:ADO VB 数据库
0 引言
数据库管理工具有多种,其中,Access是微软开发的面向小型数据库管理的易用工具,其结构由各种数据表组成,每个表有若干字段,从而每个表中可以存放若干记录集。微软的VB6.0 提供了多种开发数据库的技术,其中ADO(ActiveX Data Object)开发技术提供了一种对数据库程序简单的高层访问接口。ADO技术访问数据库相对于其他方式而言速度快,更加灵活,编程相对简单,应用更加广泛。
1 ADO对象概述
ADO对象包括连接对象、命令对象、记录集对象、域对象、参数对象、属性对象、错误对象等。其中,连接对象用于应用程序和数据源的连接,一个连接对象可以由多个命令或者记录集对象来使用;命令对象主要有执行命令函数Execute等;记录集对象包含了从数据源返回的所有行及其中的表示各个列的域对象集合。记录集对象是常用的ADO对象,主要包括记录集移动函数、记录集打开及关闭函数、创建新纪录函数、删除及更新函数等。
2 VB中数据库相关控件简介
VB6.0提供了多种控件,可以方便地使用ADO技术进行数据库维护,主要控件包括Adodc6.0及DataGrid6.0等数据库控件及数据显示控件,Combox和Textbox控件也可以通过属性设置与Adodc控件关联。相关控件如图1所示。
3 VB6.0环境中数据库应用实例
本实例针对用户登录、注册及注销进行操作,步骤如下:
3.1 界面及数据库设计
在登录界面,用到Adodc数据库控件、Combox控件及CommandButton控件等,界面如图2所示。其中,Adodc控件在使用前需要从VB环境的组件库调入。
用Access2003创建数据库,数据库命名为test.mdb,并创建一个表,命名为“users”,其结构如图3所示。
3.2 打开数据库及数据表
数据库打开时首先要连接数据库,然后连接对应的数据表。典型代码如下:
'str1:应用程序所在路径,ConnectStr:数据库路径;SQLStr:数据源的查询字符串
str1 = App.Path
ConnectStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & str1 & "\test.mdb;Mode=ReadWrite|Share Deny None;Persist Security Info=False;Jet OLEDB "
SqlStr = "SELECT * FROM users order by ID"
Adodc1.ConnectionString = ConnectStr
Adodc1.RecordSource = SqlStr
Adodc1.Refresh
3.3 数据集操作
数据集常用操作包括:MoveFirst(移动记录到第一条记录)、MoveLast(移动记录到最后一条记录)、Addnew(增加新记录)、Delete(删除记录)、Update(更新记录集)等ADO记录集对象的方法。
①记录集读操作——读入用户:
Adodc1.Recordset.MoveLast
Do While Not Adodc1.Recordset.BOF
name = Adodc1.Recordset.Fields(1)
If Adodc1.Recordset.Fields(4) = "是" Then
UserName = name
End If
Combo1.AddItem name
Adodc1.Recordset.MovePrevious
Loop '执行完毕后数据库已经移到第一条记录
②记录集写操作——注册用户
Adodc1.Recordset.MoveFirst
Do While Not Adodc1.Recordset.EOF
'如果已有用户名,则提示并退出
If txtName.Text = Adodc1.Recordset.Fields(1) Then
i = MsgBox("对不起,该用户名已经存在!", vbOKOnly, "数据管理系统")
Exit Sub
End If
Adodc1.Recordset.MoveNext
Loop
'如果没有已注册用户并且密码正确则写入数据库
Adodc1.Recordset.MoveLast
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields(1) = txtName.Text
Adodc1.Recordset.Fields(2) = TxtPwd.Text
Adodc1.Recordset.Fields(3) = "No"
Adodc1.Recordset.Update
③记录集删除操作——注销用户
Adodc1.Recordset.MoveFirst
Do While Not Adodc1.Recordset.EOF
'找到用户名,删除该记录
If Combo1.List(Combo1.ListIndex) = Adodc1.Recordset.Fields(1) And Adodc1.Recordset.Fields(2) = Text1.Text Then
If (MsgBox("注销后该用户的所有数据将被销毁,确认要注销吗?", vbYesNo, "数据管理系统") = vbYes) Then
Adodc1.Recordset.Delete
Adodc1.Recordset.Update
'刷新用户显示
Combo1.Clear
End if
End if
Loop
4 结束语
ADO技术是开发数据库的有效工具,在VB6.0环境中采用ADO技术对Access数据库进行开发相对简单、高效,可以满足中小企业的数据管理要求。
参考文献:
[1]杨秦建,王春红.Visual Basic大学基础教程(第2版).北京,电子工业出版社,2008.
[2]郑章,程刚,张勇.Visual C++ 6.0数据库开发技术.北京:机械工业出版社,1999:304-349.
[3]许俊杰.ODBC技术在ObjectARX程序中的应用.计算机辅助设计与制造,1999,12:48-51.
[4]刘振宇.基于数控加工的箱体零件CAPP系统研究[D].河北科技大学,2003:2-18.