基于ADO对象处理数据的功能实现

时间:2022-08-12 04:48:49

基于ADO对象处理数据的功能实现

摘 要:本文通过分析ADO访问数据库的两种方法,在实际应用中总结对数据库的基本的增删改查操作,实现了对信息系统数据的处理功能。

关键词:ADO对象;数据处理;功能

DOI:10.16640/ki.37-1222/t.2015.24.098

1 引言

在Visual Basic的开发环境中,常用的数据库访问有DAO/RDO/ADO三种对象模型。在这三种对象模型中,ADO是RDO和DAO的后继产物,它集成了DAO和RDO的优点,使用更灵活,访问数据的效率更高,是VB访问数据库的一个新接口,适合于各种客户/服务器应用系统和基于Web的应用系统。

2 ADO访问数据库的方法

在VB中,使用ADO访问数据库主要有两种方式:一种是使用ADO Data 控件绑定来访问数据库中的数据;一种是使用ADO对象模型即编程方式来实现。前者的优势在于编程人员可以通过很少的代码创建数据库的链接,直接将数据显示在相关表格控件中,这种方法最大的缺陷就是功能不是那么灵活,在大型数据库信息系统中,效率低下,通常是初学者的首选方法;而后者通常被应用在大型数据库信息系统中,ADO对象提供了大多数应用程序需要的所有的数据访问和处理功能,它在应用程序和数据源交互方式上提供了更好的控制,可以创建更为灵活更为强大的应用程序。

3 ADO在简单登记系统中的应用

本系统,是通过VB连接Access数据库,实现对加工工件的登记、修改、查询、删除功能,下面通过具体的实现来讨论ADO数据控件通过非编程方式实现对ACCESS数据库的访问。

(1)使用ADOData控件访问数据库。在数据库中已建立了一个工件登记数据库(db2.mdb),库中有“basic_infor”、“company_infor”两张数据表。具体实现过程如下:

1)首先将ADODC控件添加到工具箱。

2)设置连接属性字符串ConnectionString为“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=db2.mdb;Persist Security Info=False”,设置commandType属性为:“2-adCmdTable”。

3)添加数据至数据表:

Adodc1.RecordSource = "basic_infor"

Adodc1.Refresh

Adodc1.Recordset.AddNew

Adodc1.Recordset.Fields("公司名称") = Text1.Text

Adodc1.Recordset.Fields("登记日期") = DTPicker1.Value

……

Adodc1.Recordset.Update

4)删除数据

Set rs1 = Adodc1.Recordset

qr = MsgBox("是否要删除该记录", vbYesNo, "确认")

If qr = vbYes Then

If rs1.EOF Then

MsgBox "此公司没有相关信息!", , "提示"

Exit Sub

Else

rs1.Delete

rs1.MoveFirst

Adodc1.Refresh

DataGrid1.Refresh

End If

End If

5)修改数据操作可在数据库绑定的数据表中直接修改,保存即可。

6)在数据库中查询指定公司名称的记录,将查询结果显示在datagrid控件中,按照日期排序。

a = DataCombo1.BoundText

Adodc2.Recordset.MoveFirst

Adodc2.Recordset.Find ("公司名称='" & a & "'")

If Adodc2.Recordset.EOF Then

MsgBox "未查询到!", , "注意"

Exit Sub

End If

b = "select * from basic_infor where 公司名称 = '" & Adodc2.Recordset("公司名称") & "'order by 登记日期 "

Adodc1.RecordSource = b

Adodc1.Refresh

(2)使用ADO对象模型访问数据库。首先在“工程”菜单下的“引用”子菜单引用“Microsoft ActiveX Data Object 2.1 Library”,然后通过以下五个步骤完成数据库的访问。

1)创建链接:Set conn = New ADODB.Connection

conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & App.Path & "\db2.mdb"

2)打开链接:conn.Open "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\db2.mdb;"

3)创建和打开记录集:Dim adoPrimaryRS As ADODB.Recordset

adoPrimaryRS.Open "select * from basic_infor order by 登记日期 ", conn, adOpenStatic, adLockOptimistic

4)操作记录集中的数据:①增加一条记录

adoPrimaryRS.AddNew

adoPrimaryRS.Fields("公司名称") = Text1.Text

……

adoPrimaryRS.Update

②删除一条记录。通过if条件语句判断是否删除,执行删除操作:

AdoPrimaryRS.Delete

AdoPrimaryRS.MoveFirst

③修改记录。修改记录的代码与增加记录代码相似,不同在于修改记录内部不能有adoPrimaryRS.AddNew语句,否则出错。

④查找记录。通过Command对象的Execute方法来查找返回符合条件的记录集。Set adoPrimaryRS = command.Execute(RecordsAffected,Parameters,Options)

5)关闭链接和记录集(先关闭记录集再关闭链接)

adoPrimaryRS.Close

conn.close

4 结束语

通过Ado对象访问数据库的方法是程序员编码最基本的技术之一,而且是信息系统开发的重点,其代码质量的优良与否成为信息系统稳定性的一个至关重要的因素,因此, ADO技术的解析应用非常有必要。

参考文献:

[1]张宗飞.VB中基于ADO的数据库访问技术分析及应用[Z].计算机与数字工程,2008(03):53-55.

[2]张树兵等编著.Visual Basic6.0入门与提高[M].北京:清华大学出版社,1999.

上一篇:单护盾TBM掘进姿态控制 下一篇:浅谈我国常用采矿方法的应用