没有合适的资源?快使用搜索试试~ 我知道了~
数据库编程技术总结ODBC API、ADO、ADO.NET、OCI、OTL
4星 · 超过85%的资源 需积分: 35 181 下载量 171 浏览量
2010-04-11
19:42:47
上传
评论
收藏 990KB DOC 举报
温馨提示
试读
64页
当前各种主流数据库有很多,包括Oracle, MS SQL Server, Sybase, Informix, MySQL, DB2, Interbase / Firebird, PostgreSQL, SQLite, SAP/DB, TimesTen, MS ACCESS等等。数据库编程是对数据库的创建、读写等一列的操作。数据库编程分为数据库客户端编程与数据库服务器端编程。数据库客户端编程主要使用ODBC API、ADO、ADO.NET、OCI、OTL等方法;数据库服务端编程主要使用OLE DB等方法。数据库编程需要掌握一些访问数据库技术方法,还需要注意怎么设计高效的数据库、数据库管理与运行的优化、数据库语句的优化。
资源推荐
资源详情
资源评论
数据库编程总结
当前各种主流数据库有很多,包括
!""
!##$ 等等。数据库编程是对数据库的创建、读写等一列的操作。数据库编程分为数据
库 客 户 端 编 程 与 数 据 库 服 务 器 端 编 程 。 数 据 库 客 户 端 编 程 主 要 使 用 #
!、!、!%&$"、#、" 等方法;数据库服务端编程主要使用 $ 等方法。
数据库编程需要掌握一些访问数据库技术方法,还需要注意怎么设计高效的数据库、数据
库管理与运行的优化、数据库语句的优化。
一、访问数据库技术方法
数据库编程分为数据库客户端编程与数据库服务器端编程。数据库客户端编程主要使
用 #!、!、!%&$"、#、" 等方法;数据库服务端编程主要使用 $
等方法。
1、几种是数据库访问方法比较
#! 是一种适合数据库底层开发的编程方法#! 提供大量对数据
源的操作#! 能够灵活地操作游标支持各种帮定选项在所有 # 相关编程
中! 编程具有最高的执行速度。
! 提供了很好的数据库编程的对象模型%但是对数据库的所有调用以及输出的数据
都必须通过 !' 数据库引擎这对于使用数据库应用程序是严重的瓶颈。
$ 提供了 # 接口,与传统的数据库接口相比,有更好的健壮性和灵活性,
具有很强的错误处理能力能够同非关系数据源进行通信。
! 最主要的优点在于易于使用、速度快、内存支出少和磁盘遗迹小。
!%&$"是利用数据集的概念将数据库数据读入内存中,然后在内存中对数据进行
操作,最后将数据集数据回写到源数据库中。
"是 (#")的缩写,是一个 #**编译
中操控关系数据库的模板库, " 中直接操作 主要是通过 提供的 # 接
口进行,进行操作 数据库则是通过 # 接口来进行,至于 的数据库和其它一些数
据库,则 " 只提供了 # 来操作的方式。当然 和 也可以由 " 间接使
用 # 的方式来进行操纵。具有以下优点:跨平台;运行效率高,与 # 语言直接调用
! 相当;开发效率高,起码比 !% 使用起来更简单,更简洁;部署容易,不需要
! 组件,不需要%+,等。
、-# 数据库编程几种方法
-# 数据 库编程几 种方法,包括 # 连接、 #.# 连接、! 连 接、 $
、 $ . . ") 连 接 、 ! 、 专 用 方 法 /#/ #
0访问、1$#**#0。
23%4通用方法
.3%# 连接
.#/)..#0是 ! 的一部分是一个标准数据库接口。
它提供对关系数据库访问的统一接口实现对异构数据源的一致访问。
# 数据访问由以下部分组成5.
.234句柄/605# 使用句柄来标识 # 环境、连接、语句和描述器%.
.24缓存区/7805.
.294数据类型/.)0.
.2:4一致性级别/#.0.
.用 # 设计客户端的一般步骤5.
.234分配 # 环境
.24分配连接句柄
.294连接数据源
.2:4构造和执行 语句
.2;4获得查询结果
.2<4断开数据源的连接
.2=4释放 # 环境
..#.! 是一种适合数据库底层开发的编程方法#.! 提供大量对数据源的
操作#.! 能够灵活地操作游标支持各种帮定选项在所有 # 相关编程中!
编程具有最高的执行速度%因此#.! 编程属于底层编程。
%#.# 连接
.#.# 是 # 对 # 进行的封装以简化对 #.! 的 调用从而实现面向
对象的数据库编程接口%.
.#.# 的封装主要开发了 # 类和 #> 类
./30# 类
.# 类用于应用程序建立同数据源的连接。# 类中包含一个 ?@
变量它代表了数据源的连接句柄。如果要建立 # 类的实例应先调用该类的构造
函数再调用 ) 函数通过调用初始化环境变量并执行与数据源的连接。在通过 #
函数关闭数据源。
.# 类提供了对数据库进行操作的函数及事务操作。
./0#> 类
.#> 类定义了从数据库接收或者发送数据到数据库的成员变量以实现对数据集
的数据操作。
.#> 类的成员变量 ?@ 代表了定义该记录集的 语句句柄?
为记录集中字段的个数? 为记录集所使用的参数个数。
. #> 的 记 录 集 通 过 # 实 例 的 指 针 实 现 同 数 据 源 的 连 接 即
#> 的成员变量 ?)%.
.#.# 编程更适合于界面型数据库应用程序的开发但由于 # 类和
#> 类提供的数据库操作函数有限支持的游标类型也有限限制了高效的数据库
开发。在编程层次上属于高级编程。
应用实例:
3%打开数据库
...#A
...%)$/?"/B&CD@77B0#55 0AD@77
为数据源名称
...%关联记录集
...#>/E0A
...9%查询记录
...# F3CBBA
....F3CB$$#"G>BA
.....%)/#>55+F3#>550A
...CHA
...#-A 可以转换为其他类型的值
....+@/I%$/00
...........J
......读取 $ 内部数值
......%K-7/BB0A
......1 LM%C%?-A
......%K-7/BB1 LM%0A
......**A
......%&/0A
.....N
...%#/0A关闭记录集
...:%执行 F 语句
...# FCBBA
....F*CBG院系审核BA清空表
....%$7/F0A
...F 也可以为 O) 等语句
...;%读取字段名
....FCB$$#"G>@3BA...读取的文件有 @3 表的定义或为本程
序生成的表%
......执行查询语句
......%)/#>55+F#>550A
......##7C%K##7/0A列数
......# PL9HMA
.....得到记录集的字段集合中的字段的总个数
...../CHA2##7A**0
.....J
......##PA
......%K#/P0A
......PLM%CP%?&A字段名
.......N
...<%打开 文件
...# CB#>"$Q#$>-$>/G%Q0BA$ 安装驱动
....# F$A$ 为 的文件路径
...">R
....J
.....创建进行存取的字符串
.....
F%/B>-$>CJSNA&CTTA>">U6!&!$C3A>$!&RC!
$A#>$!"$?CVBSVBACSB$$0A
.....创建数据库 /既 $ 表格文件0
...../%)$/F#55 00
...J
...可以把 作为一个数据库操作
...N
....N
....@/0
....J
.....">!#$3/B$ 驱动没有安装5SB0A
.....! /B读取失败请检查是否定义数据区 @3B0A
....N
.
.9%! 连接
.!/.!.10是一组 .!' 数据库引擎的 # 自动
化接口%! 直接与 !' 数据库通信%通过 ' 数据库引擎! 也可以同其他数据
库进行通信。! 还封装了 ! 数据库的结构单元通过 ! 可以直接修改 !
数据库的结构而不必使用 的数据定义语言/0。
! 的体系结构如下5.
! 封装的类:
./30#U,)5对 ! 工作区/数据库处理事务管理器0的封装
./0#5对 ! 数据库对象的封装负责数据库连接%.
./90#>5对 ! 记录集对象的封装代表所选的一组记录%.
./:0#"5对表定义对象的封装代表基本表或附加表定义%.
./;0#75对查询对象的封装包含所有查询的定义%.
./<0#$)5! 用于接收数据库操作异常的类%.
./=0#$@ .
.! 提供了很好的数据库编程的对象模型%但是对数据库的所有调用以及输出的数据都
必须通过 !' 数据库引擎这对于使用数据库应用程序是严重的瓶颈。
.! 相对于 # 来说,属于高层的数据库接口%.
:%$. 连接
.$. 对 # 进行了两方面的扩展5一是提供了数据库编程的 $ 接口即 #,
二是提供了一个可用于关系型和非关系型数据源的接口。
.$. 提供了 # 接口,与传统的数据库接口相比,有更好的健壮性和灵活性,具
有很强的错误处理能力能够同非关系数据源进行通信。
.与 #.! 一样$. 也属于底层的数据库编程接口$. 结合了 #
对关系数据库的操作功能,并进行扩展,可以访问非关系数据库。
.$. 访问数据库的原理如下5.
.$. 程序结构5.
.$. 由客户/#70和服务器/0。客户是使用数据的应用程序,它通
过 $. 接口对数据提供者的数据进行访问和控制。$. 服务器是提供 $.
接口的软件组件。根据提供的内容可以分为数据提供程序/.0和服务提
供程序/.0。
.程序结构原理图如下5.
.234数据提供程序
.数据提供程序拥有自己的数据并把数据以表格的形式呈现给使用者使用%.
.24服务提供程序
.服务提供程序是数据提供程序和使用者的结合。它是 $. 体系结构中的中间件它
是 $. 数据源的使用者和数据使用程序的提供者
.294数据使用程序
.数据使用程序对存储在数据提供程序中的数据进行使用和控制%.
.$. 开发程序的一般步骤5.
.234初始化 # 环境
.24连接数据源
.294打开对话
.2:4执行命令
.2;4处理结果
.2<4清除对象
应用实例:
使用 $ 编写数据库应用程序
3....概述
$ 的存在为用户提供了一种统一的方法来访问所有不同种类的数据源。$ 可
以在不同的数据源中进行转换。利用 $,客户端的开发人员在进行数据访问时只需
把精力集中在很少的一些细节上,而不必弄懂大量不同数据库的访问协议。
$ 是一套通过 # 接口访问数据的 !Q 接口。这个 $ 接口相当通用,
足以提供一种访问数据的统一手段,而不管存储数据所使用的方法如何。同时, $
还允许开发人员继续利用基础数据库技术的优点,而不必为了利用这些优点而把数据移出
来。
....使用 !" 使用 $ 数据使用程序
由于直接使用 $ 的对象和接口设计数据库应用程序需要书写大量的代码。为了简化
程序设计,-7#**提供了 !" 模板用于设计 $ 数据应用程序和数据提供程序。
利用 !" 模板可以很容易地将 $ 与 # 结合起来,使数据库的参数查询等复杂的
编程得到简化。# 提供的数据库类使 $ 的编程更具有面向对象的特性。-7
#**所提供用于 $ 的 !" 模板可分为数据提供程序的模板和数据使用程序的模板。
使用 !" 模板创建数据应用程序一般有以下几步骤:
3)、 创建应用框架
)、 加入 !" 产生的模板类
9)、 在应用中使用产生的数据访问对象
9不用 !" 使用 $ 数据使用程序
利用 !" 模板产生数据使用程序较为简单,但适用性不广,不能动态适应数据库的变化。
下面我们介绍直接使用 #$ 类来生成数据使用程序。
模板的使用
$ 数据使用者模板是由一些模板组成的,包括如下一些模板,下面对一些常用类作
一些介绍。
3)、 会话类
#7 类
#7 类与 $ 的数据源对象相对应。这个类代表了 $ 数据提供程序
和数据源之间的连接。只有当数据源的连接被建立之后,才能产生会话对象,可以调用
) 来打开数据源的连接。
# 类
# 所创建的对象代表了一个单独的数据库访问的会话。一个用 #7 类
剩余63页未读,继续阅读
byxdaz
- 粉丝: 1w+
- 资源: 67
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
前往页