当前位置:数据库 > Oracle >>

用VC开发基于ORACLE数据库应用程序的两种方法

 

---- 1. 引 言

 

---- ORACLE 公 司 自1979 年 推 出 基 于SQL 标 准 的关 系 数 据 库 产

品 到1997 年 版 本8 的 推 出,ORACLE 数 据 库 以 其 支 持大 数 据 库、

 多 用 户 的 高 性 能 事 务 处 理, 对 业 界 各 项 工 业 标 准 的 支

持, 完 整 的 安 全 和 完 整 性 控 制, 支 持 分 布 式 数 据 库 和 分

 布 处 理, 具 有 可 移 植 性、 可 兼 容 性 和 可 连 接 性 等 突 出

优 点 倍 受 用 户 喜 爱, 根 据IDG1992 年 全 球UNIX 数 据库 的 市 场

报 告,ORACLE 占 市 场 销 售 量 的50%。 而 在 客 户 端 的开 发 工 具

 方 面,Visual C++ 也 因 其 强 大 的 功 能 和 高 度 的 灵 活 性 等 特

点 深 受 广 大 程 序 员 的 喜 爱, 因 此 本 文 旨 在 介 绍 使 用

Visual C++ 开 发 基 于ORACLE 数 据 库 应 用 程 序 的两 种 方 法。

 

---- 2. 使 用PRO*C 开 发 数 据 库 应 用

 

---- 2.1 PRO*C 工 作 原 理

 

---- PRO 系 列 是ORACLE 公 司 提 供 的 在 第 三 代 高级 程 序 设 计

语 言 中 嵌 入SQL 语 句 来 访 问 数 据 库 的 一 套 预 编 译程 序,

 包 括PRO*Ada、PRO*C、PRO*COBOL、PRO*Fortran、PRO*Pascal 和PRO*PL/I

六 种。 程 序 员 用 相 应 的 高 级 语 言 编 写 嵌 入SQL 语 句的PRO

 源 程 序( 若 用C 语 言 则 称 为PRO*C 源 程 序) 后 运 行 相 应 的

 预 编 译 程 序, 把 嵌 入 的SQL 语 句 转 换 为 标 准 的ORACLE 调 用

并 生 成 目 标 源 程 序, 即 纯 高 级 语 言 格 式 的 源 程 序, 然 后

 就 可 以 将 这 些 源 程 序 加 入 用 户 的 程 序 中 调 用, 其 处 理

过 程 如 下 图。

 

---- ORACLE 预 编 译 程 序 提 供 如 下 功 能:

 

---- ⑴ 能 用 六 种 通 用 的 高 级 程 序 设 计 语 言 中 的任 何 一 种

 编 写 应 用 程 序。

 

---- ⑵ 遵 循ANSI 标 准, 在 高 级 语 言 中 嵌 入SQL 语句。

 

---- ⑶ 可 采 用 动 态SQL 方 法, 让 程 序 在 运 行 时 接受 或 构 造

一 个 有 效 的SQL 语 句。

 

---- ⑷ 实 现ORACLE 内 部 数 据 类 型 和 高 级 语 言 数据 类 型 之

 间 的 自 动 转 换。

 

---- ⑸ 可 通 过 在 应 用 程 序 中 嵌 入PL/SQL 事 物 处理 块 来 改 进

 性 能。

 

---- ⑹ 能 在 程 序 行 和 命 令 行 上 指 定 所 需 要 的 预编 译 可

 选 项, 并 可 在 预 编 译 的 过 程 中 改 变 它 们 的 值。

 

---- ⑺ 能 全 面 检 查 嵌 入 的SQL 数 据 操 纵 语 句 和PL/SQL 块 的

文 法 和 语 义。

 

---- ⑻ 可 用SQL*Net 并 行 存 取 多 个 地 点 的ORACLE 数 据 库。

 

---- ⑼ 可 把 数 组 作 为 输 入 和 输 出 程 序 变 量 使 用。

 

---- ⑽ 能 对 应 用 程 序 中 的 代 码 段 进 行 条 件 预 编译。

 

---- ⑾ 提 供 了 较 强 的 异 常 处 理 功 能。

 

---- 由 此 可 见, 通 过 预 编 译 程 序 与 其 它 高 级 语 言的 结

 合, 既 可 以 利 用SQL 强 有 力 的 功 能 和 灵 活 性 为 数 据 库

应 用 系 统 的 开 发 提 供 强 有 力 的 手 段, 又 可 以 充 分 利

用 高 级 语 言 自 身 在 系 统 开 发 方 面 的 优 势, 从 而 提 供 一

 个 完 备 的 基 于ORACLE 数 据 库 应 用 程 序 的 开 发 解 决 方 案。

 

---- 2.2 在VC 中 使 用PRO*C

 

---- 每 个PRO*C 源 文 件 一 般 由 程 序 头 和 程 序 体 两部 分 组 成。 程 序 头 包 含 宿 主 变 量(SQL 语 句 中 所 包 含 的 变 量) 说 明、 通 讯 区 定 义 和C 外 部 表 示 符 的说 明 等。 程 序 体 一 般 是 由 若 干 函 数 组 成, 这 些 函 数 内 含 有SQL 语 句( 以EXEC SQL 起 头 的 语 句)。

 

---- PRO*C 支 持 的 数 据 类 型 包 括VARCHAR2( 变 长字 符 串)、

NUMBER( 二 进 制 数)、INTGER( 有 符 号 整 数)、FLOAT( 浮 点 数)、

STRING( 以NULL 结 尾 的 字 符 串)、VARNUM( 变 长 二进 制 数)、

补充:软件开发 , Vc ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,