用VC++开发ODBC数据库应用

上传人:小** 文档编号:180825016 上传时间:2023-01-08 格式:DOC 页数:3 大小:23KB
收藏 版权申诉 举报 下载
用VC++开发ODBC数据库应用_第1页
第1页 / 共3页
用VC++开发ODBC数据库应用_第2页
第2页 / 共3页
用VC++开发ODBC数据库应用_第3页
第3页 / 共3页
资源描述:

《用VC++开发ODBC数据库应用》由会员分享,可在线阅读,更多相关《用VC++开发ODBC数据库应用(3页珍藏版)》请在装配图网上搜索。

1、用开发数据库应用概述即开放式数据库互连是用于访问数据库的统一界面标准。它包含一组可扩展的动态链接库为我们提供了一个标准的数据库应用的程序设计接口可以通过它编写对数据库进行增、删、改、查和维护等操作的应用程序。在的之下安装不同数据库的驱动程序开发人员可以访问不同的数据库资源。由于是基于关系数据库的结构化查询语言而设计的在层之上的应用程序看来各个异构关系数据库只是相当于几个不同的数据源如图所示而这些数据源的组织结构之不同对于程序员来说是透明的所以我们就可以编写独立于数据库的访问程序。大多数的数据库在进行设计时都遵守标准这使应用可以利用标准对不同的数据源进行操作。我们可以发出命令由发给数据库数据库再

2、将结果经过返回给应用程序。使用编程必须先建立环境、连接、语句三个句柄环境句柄建立从应用到的联系连接句柄建立到数据源的组合关系当连接句柄建立后应用程序要建立一个语句句柄以执行语句。接下来调用执行函数就可以查询或更新数据库的表,若查询语句较为特殊,它会返回一个结果集,需要程序员对此结果集做处理。将应用程序关闭时,首先要将语句句柄释放,然后释放连接句柄最后释放环境句柄。结果集是符合查询条件的记录的集合保存在一段内存中。程序员建立结果集与用户变量的联系使结果集中的每一列与用户申请的变量一一对应以便程序员对结果集进行操作建立这个联系的动作叫绑定用开发应用程序时可利用开发系统提供的类以节省大量工作。为编程

3、提供两个类类和类。类主要封装与数据源的连接工作类封装数据源的表与用户内存的绑定工作。使用编写应用程序依对库的绑定时间分为两类静态绑定、动态绑定。静态绑定是在程序编译时绑定的一个表;动态绑定是指绑定发生于程序运行时。静态绑定的应用程序容易编写但由于绑定的动作发生在编译时只能对已知的表进行绑定。动态绑定对用户来说较为方便,而程序员也可以对表进行较多、建较灵活的操作。以下将分别介绍动态绑定和静态绑定,本文的重点是介绍动建态绑定。建建静态绑定建建静态绑定的编程步骤如下:建建利用的应用向导制作一个应用程序框架所需的代码其中数据库支持部分应选择i利用的类向导加入一个由类派生的用户记录集类假定按下按钮系统会

4、弹出两个对话框分别让用户选择数据源和表。输出结果。数据源和表由类向导确定之后系统会自动将选定的表绑定在类上即为类建立几个数据成员变量分别对应表的各个列。各数据库的数据类型与的记录集类的数据成员变量类型的对应关系如下表所示。然后类向导还要覆写类的三个虚拟函数、和l至此静态绑定就完成了。前面曾提到查询操作返回结果集包含被查询表中的符合查询条件的记录。派生记录集类的数据成员变量分别对应数据库的一个字段它们的组合就是一个记录。调用游标定位函数使类定位于某一行。类封装的增、删、改函数可修改、删除当前行对各个成员变量做输出处理可实现查询功能。静态绑定技术减少了程序员工作量。但是由于表必须编译前确定,每建立

5、一个新表应用程序都要重新编译以绑定此表表结构也由类向导固定在的派生类中,已经绑定的表一旦结构被修改应用程序也都要重新编译以绑定此表静态绑定的缺点用动态绑定正好可以克服。动态绑定动态绑定在运行时对一个表进行绑定,可以使同一个应用程序能够针对不同的表提供服务。动态绑定一个表需要做到以下两点:知道选定的数据源包含有哪些表,以便确定用户要访问的表是否存在;得到表结构的信息,确定申请多少内存以及申请什么类型的内存,以便与表相对应。在系统的安装光盘的目录下有e、和四个文件前两个文件提供类后两个文件提供类。这两个类都是的派生类分别实现查询数据源的表名信息及表的列信息。将上述四个文件加入工程就可以使用类和类了

6、。动态绑定的步骤如下:创建一个对象调用成员函数输入要访问的数据源的描述字符串。创建对象向构造函数传递对象如然后对象。现在绑定包含数据源中表名的结果集根据结果集可知道要访问的表是否存在。按相同步骤处理对象得到表结构信息。从类派生一个记录集类在记录集类里加入四个数组成员变量分别为、和类型。数组存放列名数组存放数值数组存放列长度数组存放列类型。从对象中读取列的信息加入后三个动态数组中。四个动态数组的各个项分别对应所选表的一列是一个类数组其它各项是类型指针数据库列的类型分别按左表所列对应的变量类型申请内存将指向此内存的指针加入数组中。以上各步将申请内存的工作完成了现覆写成员函数、和其中后两个函数写个空函数即可因为动态绑定用不到它们。但将被自动调用以从数据源到绑定的内存交换数据。提供了用于交换的系列函数如、等它们的用法以为例为指向对象的指针是专用于记录集与数据源交换数据机制的类是数据源的列名是指向用户所申请内存的指针。其它几个系列函数用法相同绑定不同类型的数据就要用不同类型的函数。完成类的内存申请后就可以用函数打开该内存系统会在打开的过程中自动调用函数。打开之后数据源的当前行数据和控制信息就存放在的数据成员中调用系列函数可以切换行。创其他更新、查询操作同静态绑定相同

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!