Chinaunix首页 | 论坛 | 博客
  • 博客访问: 9602331
  • 博文数量: 1227
  • 博客积分: 10026
  • 博客等级: 上将
  • 技术积分: 20273
  • 用 户 组: 普通用户
  • 注册时间: 2008-01-16 12:40
文章分类

全部博文(1227)

文章存档

2010年(1)

2008年(1226)

我的朋友

分类: Oracle

2008-03-14 12:37:32

下载本文示例代码
 关键字:PROC,ORACLE,动态SQL,SQLDA,连接数据库

摘要
    动态SQL的第4种方法通过SQLDA(The SQL Descriptor Area)和oracle内部交换数据,可以执行直到程序运行时还不知道选择表项或虚拟输入宿主变量的个数和类型的SQL语句。

模块 oracle 的数据
 
jmp_buf jmp_continue   保存程序断点
FILE* ORAin stdin 默认输入源
FILE* ORAout stdout 默认输出源
Int ORAresult 0 错误标志
Char* Dml_commands[] 数据操纵语句动词表
ORAquery Query   包装SQL执行过程
ORAqueryBase pQuery &query 为外部提供接口

与外部的接口

  • ORAin,ORAout: 应用程序通过操纵这两个变量改变oracle模块的输入输出源。
  • ORAresult:oracle模块的执行结果(有待细分错误原因)。
  • ORAconnect(user,password),ORAdisconnect():与数据库建立与断开连接,必须在执行任何SQL语句前建立连接。
  • JMP_FOR_ERROR(label):如果oracle模块出现错误便转到标号label处继续执行,建立连接时出错除外。
  • ORAqueryBase* pQuery:见抽象类ORAqueryBase的说明。
抽象类 ORAqueryBase
 
返回数据类型 方法名称 参数 描述
int set int,int,int 设置SQL描述区的大小
int Alloc 分配SQL描述区
int get_statement 从输入源读取SQL语句
int set_statement] const char* 以字符串格式输入SQL语句
int execute 执行准备好的SQL语句
int free 释放SQL描述区

参考资料
《programmer''s Guide to the Oracle Precompilers》Release 1.8
《C++高级参考手册》无忧书库 关键字:PROC,ORACLE,动态SQL,SQLDA,连接数据库

摘要
    动态SQL的第4种方法通过SQLDA(The SQL Descriptor Area)和oracle内部交换数据,可以执行直到程序运行时还不知道选择表项或虚拟输入宿主变量的个数和类型的SQL语句。

模块 oracle 的数据
 
jmp_buf jmp_continue   保存程序断点
FILE* ORAin stdin 默认输入源
FILE* ORAout stdout 默认输出源
Int ORAresult 0 错误标志
Char* Dml_commands[] 数据操纵语句动词表
ORAquery Query   包装SQL执行过程
ORAqueryBase pQuery &query 为外部提供接口

与外部的接口

  • ORAin,ORAout: 应用程序通过操纵这两个变量改变oracle模块的输入输出源。
  • ORAresult:oracle模块的执行结果(有待细分错误原因)。
  • ORAconnect(user,password),ORAdisconnect():与数据库建立与断开连接,必须在执行任何SQL语句前建立连接。
  • JMP_FOR_ERROR(label):如果oracle模块出现错误便转到标号label处继续执行,建立连接时出错除外。
  • ORAqueryBase* pQuery:见抽象类ORAqueryBase的说明。
抽象类 ORAqueryBase
 
返回数据类型 方法名称 参数 描述
int set int,int,int 设置SQL描述区的大小
int Alloc 分配SQL描述区
int get_statement 从输入源读取SQL语句
int set_statement] const char* 以字符串格式输入SQL语句
int execute 执行准备好的SQL语句
int free 释放SQL描述区

参考资料
《programmer''s Guide to the Oracle Precompilers》Release 1.8
《C++高级参考手册》无忧书库
下载本文示例代码
阅读(1653) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~