VB中数据库的连接方法

上传人:豆浆 文档编号:10887374 上传时间:2017-10-10 格式:DOCX 页数:12 大小:25.17KB
返回 下载 相关 举报
VB中数据库的连接方法_第1页
第1页 / 共12页
VB中数据库的连接方法_第2页
第2页 / 共12页
VB中数据库的连接方法_第3页
第3页 / 共12页
VB中数据库的连接方法_第4页
第4页 / 共12页
VB中数据库的连接方法_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《VB中数据库的连接方法》由会员分享,可在线阅读,更多相关《VB中数据库的连接方法(12页珍藏版)》请在金锄头文库上搜索。

1、VB 中数据库的连接方法目前,绝大多数的数据库参考书都介绍了 ODBC 的手工配置方法,或者介绍了如何在代码中进行 ODBC 配置。但这两种方法都有一定的局限性 : 不是当程序最终完成并分发到用户手中后,还需要为用户配置 ODBC,显得既麻烦又不符合专业软件的要求;就是得编写复杂的更改操作系统注册表文件的程序,十分烦琐。本文从 ADO(ActiveX Data Objects)入手,介绍无需配置数据源的几种常用大型数据库连接方法。 本文所述的无“数据源”连接,意义不是不需要数据源,否则连接无从谈起,而是不需要配置注册数据源所进行的连接。ODBC(Open DataBase Connectivi

2、ty,开放式数据库连接)是用于连接不同数据源的标准编程语言接口。许多文章中介绍,在实现 ODBC 时,必须首先配置 ODBC 环境,进行数据源的注册,然后才能在对数据库编程时,对数据源进行连接、访问和操作,并提供了用 PB 或 VB 等语言工具实现数据源注册的具体方法。这些方法不但复杂烦琐,而且由于参数内容不一,配置时令人感觉无所适从,不宜把握。 走近 ADO ADO 是微软提供的数据库访问技术。它被设计用来同新的数据访问层 OLE DB Provider一起协同工作,以提供通用数据访问(Universal Data Access)能力。OLE DB 是一个底层的数据访问接口,用它可以访问各种

3、数据源,包括传统的关系型数据库、电子邮件系统及自定义的商业对象等。 ADO 提供了一个熟悉的、高层的对 OLE DB 的 Automation 封装接口。对那些熟悉 RDO的程序员来说,可以把 OLE DB 看作 ODBC 驱动程序,如同 RDO 对象是 ODBC 驱动程序接口一样,ADO 对象是 OLE DB 的接口。同样,像不同的数据库系统需要它们自己的 ODBC 驱动程序一样,不同的数据源也要求它们自己的 OLE DB 提供者(OLE DB provider) 。目前,虽然 OLE DB 提供者比较少,但微软正积极推广该技术,并计划用 OLE DB 取代 ODBC。 微软公司已宣布今后不

4、会对 VB SQL/DBLib 进行升级,而且 ODBC API 函数一级的编程方式也不为人们所喜爱,所以,RDO 今后将被以 ActiveX 技术为基础的 ADO 所替代。ADO 是基于 OLE DB 之上的技术,它通过内部的属性和方法提供统一的数据库访问接口。 1ADO 组件 Microsoft ActiveX Data Objects (ADO) :使客户端应用程序能通过 OLE DB 提供者访问和操作数据库服务器中的数据。 ActiveX Data Objects Extensions for DDL and Security(ADOX) :将 ADO 扩展为包括创建、修改和删除的模式

5、对象,如表格和过程,以及包括用于维护用户和组以及管理对象权限的安全对象。 ActiveX Data Objects (Multidimensional) (ADO MD): 将 ADO 扩展为包括指定到多维数据的对象,并允许浏览多维模式、查询立方和检索结果。 2ADO 优点 ADO 具有高度的灵活性,它可以使用相同的编程模式连接到不同的数据提供者,而不管给定提供者的特定特性。 较低的内存占用率。 具有远程数据服务(RDS)功能,通过 RDS 可以在一次往返过程中将数据从服务器移动到客户端应用程序或 Web 页,并在客户端对数据进行处理后将更新结果返回服务器。 同传统的数据对象层次(DAO 和

6、RDO)不同,ADO 可以独立创建。可以只创建一个“Connection ”对象,然后由多个独立的“Recordset”对象来使用它。 ODBC 本身是以 SQL Server、Oracle 等关系数据库作为访问对象,而 OLE DB 则不仅限于此,它还可以对电子邮件、文本文件、复合文件、数据表等各种各样的数据通过统一的接口进行存取。 OLE DB Provider for ODBC 是 ADO 的默认提供者,默认值是 MSDASQL,如果省略连接字符串的 Provider=参数,ADO 将试图建立与该提供者的连接。 ADO 的连接方式主要可分为 OLE DB Privder 方式与 OLE

7、DB Provider for ODBC 方式。前者很明显是微软公司极力推荐的方式,对于 ADO 或 RDS 程序员来说,理想的环境是每个数据源都具有一个 OLE DB 接口,这比 ODBC 方式要快且所需资源更少。 ODBC Provider 允许 ADO 连接到任何 ODBC 数据源。ODBC 驱动程序对于当今使用的各种主要 DBMS 都有效,包括 SQL Server、Access 、FoxPro ,以及诸如 Oracle 等非微软数据库产品。提供者将不受线程控制,允许使用 Unicode,并将支持事务。 连接对象属性 ConnectionString 是 Connection 对象的属

8、性名称,为可读写 String 类型,提供数据提供者或服务提供者打开到数据源的连接所需要的特定信息,包括Provider、Driver、Server、Database、DSN、UID 、PWD 或者 Provider、Data Source、User、Password、Initial Catalog 等。 1Provider 字符串表达式,指定 OLE DB 数据或服务提供者的名称,可以缺省。 一般有三种提供者:数据提供者、服务提供者和服务组件。数据提供者拥有自己的数据并将数据以表的格式显示给应用程序。服务提供者将服务封装,使 ADO 应用程序中的功能得以扩大。服务提供者也可以进一步定义为服务

9、组件,服务组件必须连同其他服务提供者或组件一起工作。 Driver 字符串表达式,表示 ODBC 驱动程序的名称,并不是 ODBC 驱动程序动态链接库(DLL)的文件名。 有些驱动程序是微软公司的产品,在安装操作系统时就已经安装好了; 而有些数据库产品的驱动程序由开发数据库产品的软件公司随数据库产品一起提供,需要在安装数据库时选择安装后,才可以使用。如:Sybase 数据库驱动程序等。 3Server(SRVR) 字符串表达式,数据库服务名称。 4Database(DB) 字符串表达式,指定服务器上的数据库名称。即使 DSN 定义已经指定了数据库,也可以在 DSN 之外指定 Database

10、参数以便连接到不同的数据库。 5DSN(Data Source) 字符串表达式,在此为空,无须指定连接的 ODBC 数据源的名称。 6UID(User ID) 字符串表达式,为 ODBC 数据源指定用户标识( 用户账号名),指定用户必须有足够的权限。 7PWD(Password) 字符串表达式,为 ODBC 数据源指定用户口令,必须有足够的权限。 8Persist Security Info 布尔类型,为 True 时,表明采用集成安全机制;若为 False,则表明不采用集成安全机制。 无 DSN(非 DSN)连接 除了 ADO 所定义的参数外,提供者不支持任何特定连接参数,它将把任何非ADO

11、 连接参数传递给 ODBC 驱动程序管理器。下面介绍几种常见数据库的处理方法。 1. Visual Foxpro PROVIDER=MSDASQL.1; 或者为 MSDASQL DRIVER=Driver Name; SourceDB=Path; SourceType=DBF 例如: cnna.ConnectionString = “PROVIDER=MSDASQL; ” + “DRIVER=Microsoft Visual Foxpro Driver;” + “SourceDB=D:data;” + “SourceType=DBF” 2SQL Server PROVIDER=MSDASQL;

12、 DRIVER=Driver Name; SERVER=server; DATABASE=database; UID=user; PWD=password 例如: cnnb.ConnectionString = “PROVIDER= MSDASQL;” + “DRIVER=SQL Server;” + “SERVER=servera;” + “DATABASE=pubs;” + “UID=sa;” + “PWD=yyuui” 3. Sybase 数据库 PROVIDER=MSDASQL; DRIVER=Driver Name; SRVR=server; 必须是 SRVR,不能是 SERVER

13、DB=database; 可以是 DB,也可以是 DATABASE DSN=; 可以省略 UID=user; PWD=passwod; PERSIST SECURITY INFO=False 例如: cnnc.ConnectionString= “PROVIDER=MSDASQL;” + “DRIVER=Sybase System 11;” + “SRVR=serveru; ” + “DSN=;” + “DB=dataa;” + “UID=sa;” + “PWD=dqwe;” + “PERSIST SECURITY INFO=False” 4. Oracle 数据库 PROVIDER=MSDA

14、SQL; DRIVER=Driver Name; SERVER=server; databasename=database; databasefile=path; DSN=; UID=user; PWD=password; 例如: cnnd.ConnectionString = “PROVIDER=MSDASQL; ” + “DRIVER=Microsoft ODBC for Oracle;” + “SERVER=Webserver;” + “DSN=;” + “databasename=dataall;” + “databasefile=d:data;” + “UID=dba;” + “PW

15、D=killer” 应用实例 下面以 Sybase 11.9.2 为例,编制一个简单的工作人员管理程序,介绍 ADO 的具体实现方法和步骤。数据库名称为 Workerdb,只包括一个表(Worker) ,其结构如下: 字段名称宽度注释 code nchar(4) 代号 name char(8) 姓名 首先安装 ADO,在 VB 的“工程”/ “引用”对话框中选择“ActiveX Data Object 2. 5 Library”(ADODB)。其中“ADO Recordset 2. 5 Library”是一个客户端的版本(ADOR),因为不需要 Connection 对象来建立与远程数据源的联

16、系,所以 ADOR 对于客户端的数据访问来说已经足够了。 下面是部分主要代码: 1. 处理代码 在工程菜单中引用 Microsoft ActiveX Data Object 2. 5 Library 声明 ADO 连接对象为工程级全局变量 Public cndbase As New ADODB.Connection 自定义连接数据库函数 Public Function ConnectDbase(StrConnect As String) As Boolean On Error GoTo ErrHandle cndbase.ConnectionString = StrConnect cndbase.Open cndba

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号