首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

第三讲:操作数据库前的连接及常用的连接方式

【分享成果,随喜正能量】求木之长者,必固其根本;欲流之远者,必浚其泉源。传承不是一厢情愿的,而是用合适自己的方式,传递内心的欢喜,分享自己的爱,才能释放出百分百的能量。。

《VBA数据库解决方案》教程(10090845)是我推出的第二套教程,目前已经是第二版修订了。这套教程定位于中级,是学完字典后的另一个专题讲解。数据库是数据处理的利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法和实例操作,教程第一版的修订内容主要是完成所有程序文件的32位和64位OFFICE系统测试。

这套教程共两册,八十四讲,今后一段时间会给大家陆续推出修订后的教程内容。今日的内容是:第三讲:操作数据库前的连接及常用的连接方式

第三讲 操作数据库前的连接及常用的连接方式

在上一讲中,讲解了数据库大概的种类和特点,这些和我们VBA的知识离得远些,我们要用到只是其中的一点点就可以了。那么,要想操作数据库,首先要做的是什么呢?对了,就是要首先连接到这个数据库(我们先假设有这么一个数据库,即使它是空的)。这就好比我们要想实现上网的功能,首先要用网线连接到服务器,如果不连上服务器,你是无法上网的。连接数据库的过程就是相当于建立网线连接的过程,就是就是建立一个通道。如果你不连接上数据库,就无法操作数据库,就好比你不建立网络的连接就无从谈到上网浏览网页了。而且,连接数据库的过程,也是为了验证安全性.比如我这里主要讲VBA,那么我就要首先让我的VBA连接上数据库,然后才能操作数据库。

下面就开始讲如何建立连接及连接的方式了,用通俗的语言讲,就是用什么设备上网呢?是电信,还是移动,联通。这里我还是提供几种常见的连接方式及其介绍,到下一讲我们将将具体的连接代码了。

1 ODBC方式联接

ODBC(Open DataBase Connectivity)翻译过来就是开放数据库互联。是由微软主导的数据库链接标准。是一种底层的访问技术,ODBC API 可以让客户应用程序能从底层设置和控制数据库,完成一些高级数据库技术无法完成的功能;但不足之处由于ODBC是只能用于关系型数据库,使得利用ODBC很难访问对象数据库及其他非关系数据库。

2 DAO方式联接

DAO(Data Access Object)数据访问对象型。不提供远程访问功能。只提供了一种通过程序代码创建和操纵数据库的机制。最大特点是对Microsoft Jet数据库的操作很方便,而且是操作JET数据库时性能最好的技术接口之一。并且它并不只能用于访问这种数据库,事实上,通过DAO技术可以访问从文本文件到大型后台数据库等多种数据格式。Microsoft Jet为Access和Visual Basic这样的产品提供了数据引擎。

l备注1:DAO类与ODBC类相比具有很多相似之处,这主要有下面几点:

两者都支持对各种ODBC数据源的访问。二者使用的数据引擎不同,但都可以满足用户编写应用程序的要求。由于DAO和ODBC类的许多方面都比较相似,因此只要用户掌握了ODBC,就很容易学会使用DAO。实际上,用户可以很轻松地把数据库应用程序从ODBC移植到DAO。

3ADO 方式联接

ADO(ActiveX Data Object),是ActiveX数据对象,是基于OLE DB的访问接口,它是面向对象的OLE DB技术,继承了OLE DB的优点。属于数据库访问的高层接口。是在OLE DB规程下开发的,基于OLE-DB建立连接的局部和远程数据库访问技术。同OLE-DB一样,它要“年轻”些。使用中,我们一般用OLE-DB和ADO替代DAO和RDO。

l备注2:ADO和OLEDB之间的关系为:

OLEDB是一种底层数据访问界面接口。是用于第三方驱动程序商家开发输出数据源到ADO技术的应用程序或用于C++的开发者开发定制的数据库组件。

ADO 是基于OLE DB的访问接口,它是面向对象的OLE DB技术,继承了OLE DB的优点。属于数据库访问的高层接口。

OLE DB 是用于访问数据的重要的系统级编程接口,它是 ADO 的基础技术,同时还是 ADO.NET 的数据源。

可以这么说,ADO为OLEDB提供高层应用API函数。

我们可以通过下面的表格比较各种连接方式的优缺点:

在我的《VBA数据库解决方案》中大部分是以ADO的连接模式来进行连接数据库的。

今日内容回向:

1 数据库连接大概有哪几种方式?

2 为什么要先进行数据库的连接操作?

我2多年的VBA实践经验,全部浓缩在下面的各个教程中:

【分享成果,随喜正能量】人与人,人与事之间,皆有缘相由心生,境随心转,你把对方当成是菩萨,他就是菩萨,你把对方当作是魔鬼,他就是魔鬼。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20230603A00VOB00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券