基于ADO下数据库开发技术的分析

2017-12-01 00:12
科技传播 2017年15期
关键词:数据表数据源命令

李 欣

新疆工程学院,新疆乌鲁木齐 830091

基于ADO下数据库开发技术的分析

李 欣

新疆工程学院,新疆乌鲁木齐 830091

随着科学技术的进步,ODBC技术已经逐渐被ADO技术取代,并已经成为开发数据库技术的主流。基于此,本文以介绍ADO技术对象与集合为基础,阐述运用ADO技术开发数据的流程与原理,并讲述在数据库开发过程中需要注意的关键性问题,仅供技术人员参考。

ADO;数据库;开发技术

现代软件开发中,访问数据库是重要的工作内容之一。传统的技术在访问数据时的速度较慢,且仅可以访问关系型的数据库,类型较为单一。因此,对开发数据库的技术进行研究与创新,ADO技术已经被广泛的运用,简化了传统技术的访问流程,并且内存小、速度快,还可以对不同的数据源展开访问,受到广大工作人员的喜爱。

1 ADO的对象与集合

ADO技术的对象主要包括:流对象、属性对象、错误对象、参数对象、记录对象、字段对象、记录集对象、命令对象以及连接对象。在所有对象中记录集对象、命令对象以及连接对象最为重要,下面分别进行介绍:

1)连接对象是与数据源开展的唯一会话交流,既可以是ODBC数据源,也可以是OLEDB数据源。如果是服务器或者客户端,连接对象可以对将连接等结语实际的网络连接。连接对象虽然能够对数据库进行操作,但是不能返回操作记录。

2)命令对象就是访问数据源时的指令,在查询数据的基础上,将记录集对象的记录返回,还能够删除、插入相关命令。

3)记录集对象表示来自命令结果、基本表的记录全集,无论什么时候,记录集中都是单个的记录。

2 基于ADO数据库开发流程

ADO技术在单机版计算机软件中、网站建设中得到广泛应用,并得到VB、VC等编译器的支持,在FoxPro、Access、Oracle等主流数据库中都采用了ADO技术程序。在不同的编译环境中,ADO语句的语法存在一定的差别,在此以VisualC++中开发Access为例,分析运用ADO技术发开数据库的具体流程。

2.1 引入动态链接库

ADO技术并不是MFC的基本类型,而是将其涵盖在msa-do15.dll的文件之内,在开发数据库时需要使用#mport语句为编译指令,将其引入其中。通常情况下,StdAfxh文件包含于其他文件之中,以此可以添加语言代码将其引入ADO的连接库之中。如:#mport’c:program filescommon filessystemadomsado15.dll’no-namespace rename。在上述语句的指令中,no-namespace/为不能运用ADO名字的空间,同时为了不免发生常数冲突,rename将常数改为adoEOF。如果在建立开发数据中的过程中,ADO中的常数之间发生冲突,便可以利用rename进行解决[1]。

2.2 对OLE/COM进行初始化

值得注意的是,ADO数据库是COM动态库,这就说明调用ADO库之前,必须对OLE/COM动态库的环境进行初始化。在实际的应用程序中,通常在主类函数Initlnstance中完成数据库环境的初始化。

2.3 使用连接对象连接数据源

在使用连接对象时,同样具有自己的工作流程:

1)声明连接对象的类型指针,通常可以将其程序的成员。如:m_pCnooection,_ConnectionPtr。

2)将连接对象指针实例化。此过程能够在初始化函数中进行,如重新载入OnlnitDialog函数,只需要进行一次就可以。3)建立数据库之间的连接。调用连接对象中的Open方法建立数据库之间的连接,输入相关的编译命令,实现连接目的。需要注意的是,连接字符串的语法根据数据库的不同而发生相应的变化,因此需要程序员结合实际工作调整字符串的语法。

2.4 打开记录,开始操作

操作记录的方式有以下几种:

1)连接对象中的Execute方式。利用Execute方式执行一条无法返回结果的语句,如执行数据的存储过程。

2)命令对象中的Execute方式。通常,命令记录能够返回以及数据记录集,并提供一个相对简单的返回记录的存储过程与结果。使用命令接口时,既可以使用全局接口,也可以接口中使用连接串。如果连续执行几次访问数据的操作,必然是后者的结果更加准确,但是访问数据库的较为频繁,并要求多个记录集被返回,此时便需要连接对象中的全局接口来创建数据之间的连接,然后运用命令接口来执行数据集存储的过程。

3)记录集对象中的Open方式。记录集对象赋予记录集较多的控制能力,例如:游标控制、记录锁定等。与命令对象相同,并不一定会运用创建完成的数据连接,可以使用连接串替代记录集中的连接成员变量,让自己能够创建一个新的数据连接。如果程序员要运用较多的记录集,最好与命令对象一样,利用创建完成的全局接口,然后使用记录集执行存储数据的命令。

2.5 退出程序,断开链接

推出ADO主程序时,必须将数据库之间的连接释放或者断开。完成该项工作可以在程序中添加相关的命令语句来实现:

If(m_pConnection->State){

m_pConnection->Close();/断开连接

m_pConnection release();/释放连接

3 运用ADO开发数据库的关键技术

3.1 建立Access数据库

要想实现Access数据源之间的连接,就要拥有Access的相关文件。通常可以在计算机系统中建立一个mdb文件,但是这样的做法具有一定的弊端:第一,引发大量的操作重复;第二,不利于使用软件时的交付。为了避免上述的情况发生,需要使用ADOX在程序中建立mdb文件,实现自动化创建。ADOX是对ADO技术的补充,利用其可以创建一个新的Catalog,具体操作如下:

1)在使用的过程中需要利用#mport引入连接库。

2)运用Create建立数据库文件。实现自动创建文件的过程,避免手动创建的文件的繁琐,同时提高工作效率。

3.2 在程序中建立数据表

与mdb文件一样,同样在计算机系统中完成手动建立,同样具有大量的重复操作、不利于软件交付的缺点。在连接数据源之后,通过连接对象来执行建立数据表的命令。通常情况下,编译代码中会出现3个字段表,其中第一个字段是数据表的主键,能够自动完成整段数字的递加,另外两个字段则是普通的字段[2]。

3.3 自动建立与链接

C r e a t e T a b l e()、C r e a t e M D B()、ConnectDatabase()三个函数之间的联合,能够在程序中自动建立数据并完成连接,然后自动生成数据表。要想实现自动化建立,可以在程序初始化函数时加入命令代码。如:重现载入OnlnitDialog()函数时加入编译代码命令。如果在与exe文件存在同名,就建立数据库连接,如果没有便自动建立文件、数据表,然后实现连接。在应用中,一旦使用者不喜欢程序弹出信息错误的窗口,便可以在命令语句去掉“弹出窗口”的相关指命令。

4 结论

综上所述,运用ADO技术开发数据库,能够弥补传统技术的缺点,具有储存空间要求小、访问灵活、便于使用的优点,同时还能对多种类型的数据库进行访问,还可以应用在远程数据库的访问中。就广大的软件而言,ADO技术能够满足开发数据库软件的相关要求,并能够简化工作程序,提高工作质量,逐渐取代了ODBC的传统的技术,引领科学技术的发展方向。

[1]沈智芳.基于ADO接口技术的Oracle数据库嵌套表的开发研究[J].甘肃联合大学学报(自然科学版),2009(5):70-73.

[2]易当祥,吕国志,谷小青.基于ADO技术的数据库嵌套表的开发研究[J].计算机应用,2004(S1):128-129.

TP3

A

1674-6708(2017)192-0067-02

李欣,讲师,新疆工程学院,研究方向为计算机网络技术、物联网技术。

猜你喜欢
数据表数据源命令
只听主人的命令
湖北省新冠肺炎疫情数据表
基于列控工程数据表建立线路拓扑关系的研究
移防命令下达后
Web 大数据系统数据源选择*
基于不同网络数据源的期刊评价研究
这是人民的命令
基于真值发现的冲突数据源质量评价算法
图表
基于VSL的动态数据表应用研究