Chapter 33. ECPG(Oracle Pro*C兼容) — LightDB的嵌入式SQL

Table of Contents

33.1. 概念
33.2. 管理数据库连接
33.2.1. 连接到数据库服务器
33.2.2. 选择一个连接
33.2.3. 关闭一个连接
33.3. 运行 SQL 命令
33.3.1. 执行 SQL 语句
33.3.2. 使用游标
33.3.3. 管理事务
33.3.4. 预备语句
33.4. 使用主变量
33.4.1. 概述
33.4.2. 声明小节
33.4.3. 兼容 Oracle的主变量声明
33.4.4. 检索查询结果
33.4.5. 类型映射
33.4.6. 处理非简单 SQL 数据类型
33.4.7. 指示符
33.5. 动态 SQL
33.5.1. 执行没有结果集的语句
33.5.2. 执行一个有输入参数的语句
33.5.3. 执行一个有结果集的语句
33.5.4. 执行一个带输入输出参数的 Do Statement
33.6. pgtypes 库
33.6.1. 字符串
33.6.2. numeric类型
33.6.3. 日期类型
33.6.4. 时间戳类型
33.6.5. 区间类型
33.6.6. decimal类型
33.6.7. pgtypeslib 的 errno 值
33.6.8. pgtypeslib 的特殊常量
33.7. 使用描述符区域
33.7.1. 命名 SQL 描述符区域
33.7.2. SQLDA 描述符区域
33.8. 错误处理
33.8.1. 设置回调
33.8.2. sqlca
33.8.3. SQLSTATESQLCODE
33.9. 预处理器指令
33.9.1. 包括文件
33.9.2. define 和 undef 指令
33.9.3. ifdef, ifndef, elif, else, 和 endif 指令
33.10. 处理嵌入式 SQL 程序
33.11. 库函数
33.12. 大对象
33.13. C++ 应用
33.13.1. 主变量的可见范围
33.13.2. 使用外部 C 模块的 C++ 应用开发
33.14. 嵌入式 SQL 命令
ALLOCATE DESCRIPTOR — 分配一个 SQL 描述符区域
COMMIT RELEASE — 提交后释放当前连接
CONNECT — 建立一个数据库连接
CONTEXT — 用于数据库连接的上下文
DEALLOCATE DESCRIPTOR — 释放一个 SQL 描述符区域
DECLARE — 定义一个游标
DESCRIBE — 得到有关一个预备语句或结果集的信息
DISCONNECT — 终止一个数据库连接
EXECUTE ... END-EXEC — 用于执行匿名块
EXECUTE IMMEDIATE — 动态地准备和执行一个语句
GET DESCRIPTOR — 从一个 SQL 描述符区域得到信息
OPEN — 打开一个动态游标
ORACLE OPTION — 设置ORACLE 选项
PREPARE — 准备一个语句用于执行
SET AUTOCOMMIT — 设置当前会话的自动提交行为
SET CONNECTION — 选择一个数据库连接
SET DESCRIPTOR — 在一个 SQL 描述符区域中设置信息
TYPE — 定义一种新数据类型
VAR — 定义一个变量
WHENEVER — 指定一个要在一个 SQL 语句导致发生一个特定类别的情况时要采取的动作
33.15. Oracle 兼容模式
33.15.1. oracle-兼容的字符串
33.15.2. Oracle-兼容的 SQLDA 描述符区域
33.15.3. 附加函数
33.16. 内部

这一章描述了用于LightDB的嵌入式SQL包。最初它是为了与C一起工作而编写的。它也能与C++配合,但是它还不识别所有的C++结构。

这份文档还远没有完成。但是因为这个结构是标准化的,额外的信息可以在有关 SQL 的很多资源中找到。