详述Visual C++语言编写数据库

开发 后端
odbc(open database connectivity,开放数据库互连)是微软公司开放服务结构(wosa,windows open services architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准api(应用程序编程接口)。

目前,在Web开发上,Visual C++语言没有多大的市场。在企业级的应用上,以Java、.NET(C#是其中重要的一员)居多,C++仍然占有一席之地,在这里拿出来和大家分享一下,希望本文能教会你更多东西。

一个基于odbc的应用程序对数据库的操作不依赖任何dbms,不直接与dbms打交道,所有的数据库操作由对应的dbms的odbc驱动程序完成。也就是说,不论是foxpro、access还是oracle数据库,均可用odbc api进行访问。由此可见,odbc的***优点是能以统一的方式处理所有的数据库。

一个完整的Visual C++语言由下列几个部件组成:  
 
odbc管理器(administrator)。该程序位于windows 95控制面板(control panel)的32位odbc内,其主要任务是管理安装的odbc驱动程序和管理数据源。 驱动程序管理器(driver manager)。驱动程序管理器包含在odbc32.dll中,对用户是透明的。其任务是管理odbc驱动程序,是odbc中最重要的部件。 odbc api。
 
odbc 驱动程序。是一些dll,提供了odbc和数据库之间的接口。 数据源。数据源包含了数据库位置和数据库类型等信息,实际上是一种数据连接的抽象。 各部件之间的关系如图下图所示:
 
应用程序要访问一个数据库,首先必须用odbc管理器注册一个数据源,管理器根据数据源提供的数据库位置、数据库类型及odbc驱动程序等信息,建立起odbc与具体数据库的联系。这样,只要应用程序将数据源名提供给odbc,odbc就能建立起与相应数据库的连接。
 
在odbc中,odbc api不能直接访问数据库,必须通过驱动程序管理器与数据库交换信息。驱动程序管理器负责将应用程序对odbc api的调用传递给正确的驱动程序,而驱动程序在执行完相应的操作后,将结果通过驱动程序管理器返回给应用程序。#t#
 
在访问odbc数据源时需要odbc驱动程序的支持。用Visual C++语言安装程序可以安装sql server、 access、 paradox、 dbase、 foxpro、 excel、 oracle 和microsoft text等驱动程序.在缺省情况下,vc5.0只会安装sql server、 access、 foxpro和dbase的驱动程序.如果用户需要安装别的驱动程序,则需要重新运行vc 5.0的安装程序并选择所需的驱动程序。   

 1 ado是微软整个com战略体系中的一个组成部分
 
活动数据对象(ado)是一组由微软提供的com组件。 ado建立在微软所提倡的com体系结构之上,它的所有接口都是自动化接口,因此在c++、visualbasic、delphi等支持com的开发语言中通过接口都可以访问到ado。ado通过使用ole db这一新技术实现了以相同方式可以访问关系数据库、文本文件、非关系数据库、索引服务器和活跃目录服务等的数据,扩大了应用程序中可使用的数据源范围,从而成为微软整个com战略体系中访问数据源组件的***,是odbc的替代产品。 
 
2 Visual C++语言模型组成 
 
与微软的其它数据访问模型dao和rdo相比,ado对象模型非常精炼,仅由三个主要对象connection、command、recordset和几个辅助对象组成,其相互关系如图所示。connection对象提供ole db数据源和对话对象之间的关联,它通过用户名称和口令来处理用户身份的鉴别,并提供事务处理的支持;它还提供执行方法,从而简化数据源的连接和数据检索的进程。command对象封装了数据源可以解释的命令,该命令可以是sql命令、存储过程或底层数据源可以理解的任何内容。#t#

record set用于表示从数据源中返回的表格数据,它封装了记录集合的导航、记录更新、记录删除和新记录的添加等方法,还提供了批量更新记录的能力。其它辅助对象则分别提供封装ado错误、封装命令参数和封装记录集合的列。

责任编辑:chenqingxiang 来源: 计世网
相关推荐

2010-01-11 13:19:24

C++代码

2011-07-13 14:07:10

MFC ODBCAccessVisual C++

2010-01-12 11:03:04

C++库

2011-07-20 16:23:14

C++

2009-09-01 09:45:49

Visual C#对数

2010-01-27 15:58:35

C++数据结构

2010-01-12 14:22:26

Visual C++

2009-08-06 18:10:06

C#数据库事务

2010-01-18 15:40:37

Visual C++工

2010-01-15 14:52:33

Visual C++

2009-08-18 16:31:19

Visual C#编写

2009-12-30 15:55:20

ADO.NET数据库

2010-08-30 14:31:43

Cache

2009-11-10 11:22:11

Visual Stud

2009-12-17 13:28:41

Visual Stud

2010-01-19 14:39:22

C++ Builder

2010-12-30 16:11:10

Visual StudWindows部署VC++

2011-04-26 10:24:27

C++MySQL

2010-02-05 09:23:38

C++连接SQL数据库

2010-02-02 17:27:16

C++连接MySqL数
点赞
收藏

51CTO技术栈公众号