在计算机应用领域,数据库的应用已经越来越广泛,特别是在研究和开发实时信息处理,以及大规模数据存储、管理和搜索方面,起着关键作用。因此,如何高效、可靠地访问数据库,已成为数据库应用开发的关键问题。ADO(ActiveX Data Objects)是一组可以协同使用的对象,它们以通用的方式访问各种数据源。下面从 ADO 的概念、特点、使用、优点以及应用案例等方面介绍 ADO 轻松实现数据库访问。
创新互联公司自2013年起,先为申扎等服务建站,申扎等地企业,进行企业商务咨询服务。为申扎企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
1. ADO的概念及特点
ADO(ActiveX Data Objects)是微软公司提供的一种访问数据库的解决方案,是 Microsoft 数据访问技术的基础。ADO 可以从数据源中获取数据,并通过 API 的方式将其置于各种服务中,由此实现数据的有效利用。
ADO 的特点有以下几点:
①面向对象:ADO 的操作完全基于对象,使用很方便。我们可以通过包括访问器、属性和方法在内的方法来操作数据。
②支持多种数据库:ADO 不仅仅支持 Microsoft SQL Server,也支持 Oracle、MySQL、PostgreSQL 等数据库系统。
③高效性能:ADO 使用了缓存来提高性能。当查询的数据在缓冲区中时,访问速度非常快,从而提升了数据访问的效率。
④数据处理的能力:ADO 支持各种 SQL 命令来访问数据库,并执行增加、删除、修改操作。
2. ADO的使用
ADO 的使用需要了解以下的 ADO 对象和操作:
①Connection 对象:ADO 应用程序与数据源之间的桥梁是用 Connection 对象来实现的。使用 Connection 对象打开数据库,执行 SQL 命令或存储过程。
②Command 对象:Command 对象用于执行 SQL 命令或调用存储过程。它是与数据库交互的关键对象。
③Recordset 对象:Recordset 对象可以看作是存储着检索结果的一个表,用于存储从数据库检索到的数据。
通过这些对象,可以方便地连接、操作数据库中的数据,进而实现对数据库的访问。
3. ADO的优点
ADO 具有如下的优点:
① ADO 支持多种数据源的访问,包括了 Microsoft SQL Server、Oracle、MySQL 等。
② ADO 提供了一套简单却效率高的对象模型,相比其他方式,使用 ADO 更加高效。
③ ADO 支持容易使用且可简化开发的强大的集成查询功能,可以避免 SQL 语句的麻烦操作。
④ ADO 支持异步请求,在快速查询和数据更新时具有更高的速度。
4. ADO的应用案例
如何应用 ADO 呢?下面是一个基本的 ADO 实现数据库操作的案例:
步骤1:创建数据库
在本地电脑(例如C盘)一个文件夹下创建新文本文件”test.mdb”,然后创建一个 Customers 表格,含三个字段 ID、 Name 和 Address。
步骤2:创建 ASP 文件
在 Notepad 工具中新建一个 ASP 文件。将以下代码拷贝到文件中:
<%
Set conn=Server.CreateObject(“ADODB.Connection”)
conn.Provider=”Microsoft. Jet.OLEDB.4.0″
conn.Open(Server.MapPath(“test.mdb”))
Set rs = Server.CreateObject(“ADODB.Recordset”)
sql = “Select * from Customers”
rs.Open sql, conn
Do While Not rs.EOF
Response.Write(rs.Fields(“ID”).Value & ” — ” & rs.Fields(“Name”).Value & ” — ” & rs.Fields(“Address”).Value & “
“)
rs.MoveNext
Loop
rs.Close
conn.Close
%>
步骤3:测试
在浏览器中输入文件名,例如:http://localhost/asp/ado.asp,即可看到操作结果。
通过以上的实例,我们可以知道对ADO的基本应用。
5.
ADO 是一种高效、可靠的数据库访问解决方案。其提供的一系列的对象和操作,使得通过 ADO 实现数据库的访问变得更加简单。并且,ADO 对于多种数据源的访问,具有非常好的兼容性。ADO 在许多领域都有着广泛的应用,例如企业级应用程序、数据仓库、数据集成、Web 应用程序等。相信随着技术的日益发展,ADO 在未来的数据库应用中将会得到更加广泛的应用和发展:诸如海量数据云计算、分布式计算和其他智能应用,这些都离不开这样一种高效、可靠的数据库访问解决方案。
相关问题拓展阅读:
首先,要用#import语句来引用支持ADO的组件类型库(*.tlb),其中类型库可以作为可执行程序(DLL、EXE等)的一部分被定位在其自身程序中的附属资源里,如:被定位在msado15.dll的附属资源中,只需要直接用#import引用它既可。可以直接在Stdafx.h文件中加入下面语句来实现:
#import “c:\program files\common files\system\ado\msado15.dll” \
no_namespace \
rename (“EOF”, “adoEOF”)
其中路径名可铅纤以根据自己系统安装的ADO支持文件的路径来自行设定。当编译器遇到#import语句时,它会为引用组件类型库中的接口生成包装类,#import语句实际上相当于执行了API涵数LoadTypeLib()。#import语句会在工程可执行程序输出目录中产生两个文件,分别为*.tlh(类型库头文件)及*.tli(类型库实现文件),它们分别为每一个接口产生智能指针,并为各种接口方法、枚举类型,CLSID等进行声明,创建一系列包装方法。语句no_namespace说明ADO对象不使用命名空间,rename (“EOF”, “adoEOF”)说明将ADO中结束标志EOF改为adoEOF,以避免和其它库中命名相冲突。
其次,在程序初始过程中需要初始化组件,一般可以用CoInitialize(NULL);来实现,这种方法在结束时要关闭初始化的COM,可以用下面语句CoUnInitialize();来实现。在MFC中还可以采用另一种方法来实现初始化COM,这种方法只需要一条语句便可以自动为我们实现初始化COM和岩激唤结束时关闭COM的操作,语句如下所示: AfxOleInit();
接着,就可以直接使用ADO的操作了。我们经常使用的只是前面用#import语句引用类型库时,生成的包装类.tlh中声明的智能指针中的三个,它们分别是_ConnectionPtr、_RecordsetPtr和_CommandPtr。下面分别对它们的使用方法进行介绍:
1、_ConnectionPtr智能指针,通常用于打开、关闭一个库连接或用它的Execute方法来执行一个不返回结果的命令语句(用法和_CommandPtr中的Execute方法类似)。
——打开一个库连接。先创建一个实例指针,再用Open打开一个库连接,它将返回一个IUnknown的自动化接口指针。代码如下所示:
_ConnectionPtr m_pConnection;
// 初始化COM,创建ADO连接等操作
AfxOleInit();
m_pConnection.CreateInstance(__uuidof(Connection));
// 在ADO操作中建议语句中要常用try…catch()来捕获错误信息,
// 因为它有时会经常出现一些意想不到的错误。jingzhou xu
try
{
// 打开本地Access库Demo.mdb
m_pConnection->Open(“Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Demo.mdb”,””,””,adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(“数据库连接失败,确认数据库Demo.mdb是否在当前路径下!”);
return FALSE;
}
——关闭一个库连接。如果连接状态有效,则用Close方法关闭它并赋于粗凯它空值。代码如下所示:
if(m_pConnection->State)
m_pConnection->Close();
m_pConnection= NULL;
如何用ADO连接各种数据库的代码羡枝:
简单介绍一下几种ADO连接方式:ODBC DSN,ODBC DSN-Less,
OLE DB Provider,和”MS Remote” Provider.
1。ODBC DSN连接
I.DSN
oConn.Open “DSN=AdvWorks;” & _
“UID=Admin;” & _
“PWD=;”
注意:从MDAC2.1开始就不能够在使用这样兄明敏的方式了,就是只把DSN文件名放在ConnectString中
你必须同时使用DSN,UID,PWD标志。例如下面的槐敬方式在MDAC 2.1中将会出错:
oConn.Open “AdvWorks”
II.File DSN
oConn.Open “FILEDSN=\somepath\mydb.dsn;” & _
“UID=Admin;” & _
“PWD=;”
III.ODBC DSN-Less Connections
a)ODBC Text Driver
oConn.Open _
“Driver={Microsoft Text Driver (*.txt; *.csv)};” & _
“Dbq=\somepath\;” & _
“Extensions=asc,csv,tab,txt;” & _
“Persist Security Info=False”
注意:需要在SQL语句中指定使用到的文件名。例如:
oRs.Open “Select * From customer.csv”, _
oConn, adOpenStatic, adLockReadOnly, adCmdText
b)ODBC Driver for Access
i)普通安全模式:
oConn.Open _
“Driver={Microsoft Access Driver (*.mdb)};” & _
“Dbq=\somepath\mydb.mdb;” & _
“Uid=Admin;” & _
“Pwd=;”
ii)如果使用了System database:
oConn.Open _
“Driver={Microsoft Access Driver (*.mdb)};” & _
“Dbq=\somepath\mydb.mdb;” & _
“SystemDB=\somepath\mydb.mdw;”, _
“admin”, “”
c)ODBC Driver for SQL Server
i)普通安全模式
oConn.Open “Driver={SQL Server};” & _
“Server=carl2;” & _
“Database=pubs;” & _
“Uid=sa;” & _
“Pwd=;”
ii)使用信任安全模式:
oConn.Open “Driver={SQL Server};” & _
“Server=carl2;” & _
“Database=pubs;” & _
“Uid=;” & _
“Pwd=;”
注意:要使用空白的Uid和Pwdd)ODBC Driver for Oracle
i)使用现有的Oracle ODBC Driver from Microsoft:
oConn.Open _
“Driver={Microsoft ODBC for Oracle};” & _
“Server=OracleServer.world;” & _
“Uid=demo;” & _
“Pwd=demo;”
ii)使用老版本的Oracle ODBC Driver from Microsoft:
oConn.Open _
“Driver={Microsoft ODBC Driver for Oracle};” & _
“ConnectString=OracleServer.world;” & _
“Uid=demo;” & _
“Pwd=demo;”
IIII)使用微软的OLE DB Data Link Connections方式Data Link File (UDL)
a)使用绝对路径
oConn.Open “File Name=\somepath\pubs.udl;”
b)使用相对路径
oConn.Open “File Name=pubs.udl;”
V)OLE DB Provider Connections方式
a)OLE DB Provider for ODBC Databases
i)Access (Jet):
oConn.Open _
“Provider=MSDASQL;” & _
“Driver={Microsoft Access Driver (*.mdb)};” & _
“Dbq=\somepath\mydb.mdb;” & _
“Uid=Admin;” & _
“Pwd=;”
ii)SQL Server:
oConn.Open _
“Provider=MSDASQL;” & _
“Driver={SQL Server};” & _
“Server=carl2;” & _
“Database=pubs;” & _
“Uid=sa;” & _
“Pwd=;”
b)OLE DB Provider for Microsoft Jet (Access)
i)普通安全模式:
oConn.Open _
“Provider=Microsoft.Jet.OLEDB.4.0;” & _
“Data Source=\somepath\mydb.mdb;” & _
“User Id=admin;” & _
“Password=;”
ii)如果使用了System database:
oConn.Open _
“Provider=Microsoft.Jet.OLEDB.4.0;” & _
“Data Source=\somepath\mydb.mdb;” & _
“Jet OLEDB:System Database=system.mdw;”, _
“admin”, “”
注意:当使用OLE DB Provider4.0版本是,需要把MDB和MDW文件转换成4.0的数据库格式
iii)如果MDB需要一个数据库密码的话:
oConn.Open _
“Provider=Microsoft.Jet.OLEDB.4.0;” & _
“Data Source=\somepath\mydb.mdb;” & _
“Jet OLEDB:Database Password=MyDbPassword;”, _
“admin”, “”
c)OLE DB Provider for Excel Spreadsheet:
oConn.Open _
“Provider=Microsoft.Jet.OLEDB.4.0;” & _
“Data Source=\somepath\expenses.xls;” & _
“Extended Properties=””Excel 8.0;HDR=Yes;””;”
注意: “HDR=Yes”表示在之一行中是行标题,在provider中将不把之一行包括入recordset中
d)OLE DB Provider for SQL Server
i)普通安全模式:
oConn.Open “Provider=sqloledb;” & _
“Network Library=DBMSSOCN;” & _
“Data Source=carl2;” & _
“Initial Catalog=pubs;” & _
“User Id=sa;” & _
“Password=;”
ii)使用信任安全模式:
oConn.Open “Provider=sqloledb;” & _
Network Library=DBMSSOCN;” & _
“Data Source=carl2;” & _
“Initial Catalog=pubs;” & _
“Trusted_Connection=yes;”
注意:”Network Library=DBMSSOCN”声明OLE DB使用TCP/IP替代Named Pipes.
e)OLE DB Provider for Oracle
oConn.Open “Provider=msdaora;” & _
“Data Source=OracleServer.world;” & _
“User Id=sa;” & _
“Password=;”
(VI)Remote OLE DB Provider Connections方式(就是我一直在研究的RDS方式哦,呵呵。):
a)MS Remote – Access (Jet)
i)ODBC DSN:
oConn.Open “Remote Server=
” & _
“Remote Provider=MSDASQL;” & _
“DSN=AdvWorks;” & _
“Uid=admin” & _
“Pwd=;”
ii)OLE DB Provider:
oConn.Open “Provider=MS Remote;” & _
“Remote Server=
” & _
“Remote Provider=Microsoft.Jet.OLEDB.4.0;” & _
“Data Source=\somepath\mydb.mdb;”, _
“admin”, “”
iii)OLE DB Provider自定义事务对象
oConn.Open “Provider=MS Remote;” & _
“Remote Server=
” & _
“Handler=MSDFMAP.Handler;” & _
“Data Source=MyAdvworksOLEDBConnectTag;”
b)MS Remote – SQL Server
i)ODBC DSN:
oConn.Open “Remote Server=
” & _
“Remote Provider=MSDASQL;” & _
“Network Library=DBMSSOCN;” & _
“DSN=Pubs;” & _
“Uid=sa” & _
“Pwd=;”
ii)OLE DB Provider
oConn.Open “Provider=MS Remote;” & _
“Remote Server=
” & _
“Remote Provider=SQLOLEDB;” & _
“Network Library=DBMSSOCN;” & _
“Data Source=carl2;” & _
“Initial Catalog=pubs;” & _
“User ID=sa;” & _
“Password=;”
关于ado连数据库的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
成都网站推广找创新互联,老牌网站营销公司
成都网站建设公司创新互联(www.cdcxhl.com)专注高端网站建设,网页设计制作,网站维护,网络营销,SEO优化推广,快速提升企业网站排名等一站式服务。IDC基础服务:云服务器、虚拟主机、网站系统开发经验、服务器租用、服务器托管提供四川、成都、绵阳、雅安、重庆、贵州、昆明、郑州、湖北十堰机房互联网数据中心业务。
网站题目:ADO轻松实现数据库访问 (ado连数据库)
文章URL:http://www.shufengxianlan.com/qtweb/news26/403076.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联