VB与数据库连接方式

时间:2022-12-04 13:35:45

        VB与数据库的连接方式总的来说分为2种:有源连接、无源连接。其中的源指的是ODBC数据源。数据源类型可分为文件DSN、用户DSN\系统DSN三类。(OLE DB作为数据的提供者。)

       首先回顾一下微软的数据访问方式走过的几个阶段:

①ODBC(open Database Connectivity):是微软第一个使用SQL访问不同关系型数据库的访问技术。使用ODBC应用程序能够通过单一的命令操纵不同的数据库。而开发人员需要做的仅仅是针对不同的应用加入相应的ODBC驱动。

       ②DAO(Data Access Objects):不像ODBC那样是面向C和C++程序员的,它是微软提供给VB开发人员的一种简单地数据访问技术,用于操纵Access数据库。

       ③RDO(Remote Data Objects):在使用DAO访问不同的关系型数据库时,Jet引擎不得不在DAO和ODBC之间进行命令的转化,导致了性能的下降,而RDO的出现就顺理成章了。

       ④OLE DB:随着越来越多的数据以非关系型格式存储,需要一种新的架构来提供这种应用和数据源之间的无缝连接。基于COM(Component Object Model)的OLE DB应运而生。

       ⑤ADO(ActiveX Data Objects):基于OLE DB之上的ADO更简洁、更高级、更适合VB程序员,同时消除了OLE DB的多种弊端,取而代之是微软技术的发展趋势。

      有源连接:首先通过配置ODBC数据源。然后采用ADO访问ODBC数据源,完成数据库连接.格式如下:

       ConnectString = "FileDSN=student.dsn;UID=sa;PWD=1。(简单来说就是VB通过数据源来访问数据库。)

       无源连接:ADO对象具体格式如下:

        a.访问access数据库:

       "Provider=Microsoft.Jet.OLEDB.4.0;"&  "Data Source=" & App.Path & "\实例1.mdb;

         b.访问SQL Server数据库:

        Cnn3.Connectingstring="provider=Microfoft.Jet.OLEDB.4.0;DATASource=D:\数据库\实例1.mdb"

        无论是有源连接还是无源连接,在使用ADO对象使用前必须引用

        先简单介绍一下什么是ADO?ADO是建立在OLE DB之上的高级数据库访问技术,是对OLE DB的封装,微软为我们提供了丰富的COM组件(包括Activex)来访问各种数据库特点是简单易用,这也是为什么大多数数据库应用软件开发者选择ADO的重要原因。

        下面介绍一下ADO对象模型:

  ADO*包含了7个对象,包括3个独立对象和依赖独立对象才能使用的4个非独立对象。(前三个:独立,后三个:非独立对象)

        Connection:连接对象,用于与数据库建立连接执行查询及进行事务处理。在连接时必须制定使用何种数据库OLE DB提供者。

        Command:命令对象,用于执行动作查询,比如创建/删除数据库。执行查询返回记录集、删除记录等操作。

        Recordset:记录集对象,保存来自基本表或命令对象返回的结果。使用记录集对象几乎可以完成所有的数据操作

        Field: 字段对象,依赖于记录集对象使用。可使用Fields集和来获得记录集中每个字段的信息。

        Parmeter:参数对象:依赖于命令对象使用,用于为查询参数提供数据。同时使用参数对象和命令对象,可使数据库对查询进行预编译。从而提高执行速度。

        Paroperty: 属性对象,每个连接对象、命令对象、记录集对象以及字段对象都有一个属性对象集和。使用属性对象可以访问特定对象的主要信息。例如获得数据库中表的名称。

        Error:错误对象,依赖连接对象使用。如果在访问数据库的过程中发生错误。这些错误的信息便保存到连接对象的Errors集和中。使用错误对象来定义处理相应错误的措施,避免应用程序在执行过程中意外终止。

        Connection对象的部分属性和方法如下

       ConnectionString属性:制定连接数据源的基本信息。

        Open方法:打开数据源连接。

        Close方法:关闭数据源连接。

        Recordset对象的部分属性和方法如下

       ActiveConnection 属性:代表数据源的活动连接。通常将其设置为已建立的Connection对象。

        Eof属性(end of file):测试当前记录位置是否位于记录集的最后一个记录之后,如果当前记录位于记录集的最后一个记录之后,Eof属性将返回True,否则返回False。

        Open方法:用于打开记录集。

        现在已经开始敲机房啦,但感觉有些敲不动,回来看看学过的知识,以前没有好好总结,所以现在重新回来审视一下自己学过的红皮书。