首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

冰冻三尺 之 "访问数据库"

2012-09-09 
冰冻三尺 之 访问数据库几个数据库的小例子敲完了,一般一个例子也就是分成了三部分,对数据库的访问,对数

冰冻三尺 之 "访问数据库"

        几个数据库的小例子敲完了,一般一个例子也就是分成了三部分,对数据库的访问,对数据库的操作和释放数据库的数据,而这几个例子都是用的ADO模型,接下来分析一下ADO模型

        首先ADO模型和系统的数据库是什么关系

冰冻三尺 之 "访问数据库"

       图中说的很清晰明了,ADO相当于应用程序和数据之间的一个媒介,应用程序通过ADO模型来

对数据进行操作,而ODBC,OLEDB等又是ADO和数据库之间的一个桥梁,ODBC和OLEDB将数据库中的数据转换成ADO能够识别的数据然后传递给ADO。

几个概念如下

      【ODBC】 是一种底层的访问技术,因此,ODBCAPI可以是客户应用程序能从底层设置和控制数据库,完成一些高级数据库技术无法完成的功能;但不足之处由于ODBC只能用于关系型数据库,使得利用ODBC很难访问对象数据库及其他非关系数据库。

       

一个完整的ODBC由下列几个部件组成:

  应用程序(Application)。

  ODBC管理器(Administrator)。该程序位于Windows控制面板(Control Panel)的32位ODBC内,其主要任务是管理安装的ODBC驱动程序和管理数据源。

  驱动程序管理器(DriverManager)。驱动程序管理器包含在ODBC32.DLL中,对用户是透明的。其任务是管理ODBC驱动程序,是ODBC中最重要的部件。

  ODBC API。

  ODBC驱动程序。是一些DLL,提供了ODBC和数据库之间的接口。

  数据源。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象。

  应用程序要访问一个数据库,首先必须用ODBC管理器注册一个数据源,管理器根据数据源提供的数据库位置、数据库类型及ODBC驱动程序等信息,建立起ODBC与具体数据库的联系。这样,只要应用程序将数据源名提供给ODBC,ODBC就能建立起与相应数据库的连接。

  在ODBC中,ODBCAPI不能直接访问数据库,必须通过驱动程序管理器与数据库交换信息。驱动程序管理器负责将应用程序对ODBCAPI的调用传递给正确的驱动程序,而驱动程序在执行完相应的操作后,将结果通过驱动程序管理器返回给应用程序。

  在访问ODBC数据源时需要ODBC驱动程序的支持。可以安装SQLServer、 Access、 Paradox、 dBase、 FoxPro、 Excel、 Oracle 和MicrosoftText等驱动程序.在缺省情况下,只会安装SQL Server、 Access、FoxPro和dBase的驱动程序.如果用户需要安装别的驱动程序,则需要重新运行安装程序并选择所需的驱动程序。

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

         ODBC 和OLE  DB的关系

         ODBC标准的对象是基于SQL 的数据源(SQL-Based Data Source),而OLE DB的对象则是范围更为广泛的任何数据存储。从这个意义上说,符合ODBC 标准的数据源是符合OLE DB 标准的数据存储的子集。符合ODBC标准的数据源要符合OLE DB 标准,还必须提供相应的OLE DB 服务程序(Service Provider),就像SQL Server 要符合ODBC标准,必须提供SQL Server ODBC 驱动程序一样。现在,微软自己已经为所有的ODBC 数据源提供了一个统一的OLE DB 服务程序,叫做ODBCOLE DB Provider。实际上,ODBC Provider 的作用,是替换ODBC Driver Manager,作为应用程序与ODBC驱动程序之间的桥梁,理论上不会增加任何开销。

     

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

         OLEDB和ODBC都是底层系统,都可直接对数据库进行访问,区别在于OLEDB既可以访问关系型数据库,也可访问非关系型数据库,而ODBC只能访问关系型数据库。虽然对不同数据库的操作方法不一样,但统一了通向不同的数据源的底层应用程序接口。

       

        + ADO是对象模型,也就是一组对象的集合,这里一共两类其中对象。

        独立型对象:

         connection:连接数据库

         command: 用于查询

         recordset      用于记录

        依赖性对象

         field         记录字段信息   依赖   recordset

         parameter用参数查询提供数据  依赖 command

冰冻三尺 之 "访问数据库"


         property    用于访问特定对象主要信息    依赖  独立型对象

         error    错误处理   依赖  connection


冰冻三尺 之 "访问数据库"


  

  下面是通过Connection对象创建SQL Server和ODBC数据源的连接.

  首选定义连接对象Set objCnName =  New  ADODB.Connection

   1.使用jet连接Access数据库

  objCnName.ConnectionString= "provider=microsoft.jet.oledb.3.51;" & "dataasource=" & App.Path & "\*.Mdb"

  objCnName.Open"mySQLODBC", "sa", ""      '这里的mySQLODBC 是配置ODBC数据源是的文件名

    2.打开SQL Server数据源连接

    objCnName.ConnectionString= "Provider=SQLOLEDV;database=myvbdatavase;" &"server=(local);integrated security=sspi"

  objCnName.Open

    3.使用DSN标记打开ODBC数据源连接

   objCnName.ConnectionString= "DSN=mySQLODBC;UID=sa;PWD=;"

    objCnName.Open

    4.使用DSN标记打开ODBC只不过访问别人机子上的数据库.

  objCnName.ConnectString= "Provider=SQLOLEDB;Data Source=192.168.24.176;InitialCataLog=Student;UID=sa;PWD=123"

  objCnName.Open ConnectionString

     5.使用DSN和OLEDB 标记打开连接

 objCnName.ConnectionString = "datasource=mySQLODBC;user id =sa ;password=;"

  objCnName.Open

 

 

    objName.open方法,打开数据源连接

    objName.Close 方法,关闭数据源连接

    Set objName = nothing  释放数据

  

  冰冻三尺非一日之寒,巨大的进步在于点点滴滴的积累.

 

热点排行