Collection Contents 上一页 下一页 PDF

ASA 编程指南

嵌入式 SQL 编程

SQL 预处理器


SQL 预处理器会在运行编译器之前处理包含嵌入式 SQL 的 C 或 C++ 程序。

语法 

sqlpp [  options ] input-file [  output-file ]

选项 说明
–c "keyword=value;..." 提供参考数据库连接参数 [UltraLite]
–d 理想数据大小
–e level 将不符合要求的 SQL 语法标记为错误
–f 将 far 关键字置于生成的静态数据上
–g 不显示 UltraLite 警告
–h linewidth 限制输出的最大行长度
–k 包括 SQLCODE 的用户声明
–m version 为生成的同步脚本指定版本名称
–n 行号
–o operatingsys 目标操作系统。
–p project UltraLite 项目名称
–q 安静模式:不打印横幅
–r 生成再入式代码
–s stringlen 编译器的最大字符串长度
–w level 将不符合要求的 SQL 语法标记为警告
–x 将多字节 SQL 字符串更改为转义序列
–z sequence 指定归类序列
另请参见 

简介

说明 

SQL 预处理器会在编译器运行之前处理包含嵌入式 SQL 的 C 或 C++ 程序。SQLPP 将 input-file 中的 SQL 语句转换为 C 语言源代码并将源代码放入 output-file。含有嵌入式 SQL 的源程序的扩展名通常为 .sqc。缺省的输出文件名是 input-file,其扩展名为 .c。如果 input-file 具有 .c 扩展名,则缺省的输出文件扩展名是 .cc

选项 

–c    在对那些作为 UltraLite 应用程序组成部分的文件进行预处理时,此选项是必需的。连接字符串必须使 SQL 预处理器能够读取和修改您的参考数据库。

–d    生成减小数据空间大小的代码。数据结构在使用之前执行时会得到重用和初始化。这会增大代码的大小。

–e    如果嵌入式 SQL 不是 SQL/92 的指定集合的组成部分,此选项就会将其标记为错误。

可用的 level 值及其含义如下:

–g    不显示特定于 UltraLite 代码生成的警告。

–h    将 sqlpp 输出的最大行长度限制为 num。行继续符是反斜杠 (\),num 的最小值是十。

–k    通知预处理器,要编译的程序包括 SQLCODE 的用户声明。

–m    为生成的同步脚本指定版本名称。可以在 MobiLink 统一数据库中使用生成的同步脚本进行简单同步。

–n    在 C 文件中生成行号信息。该信息包括生成的 C 代码中适当位置处的 #line 指令。如果您使用的编译器支持 #line 指令,使用此选项可使编译器按照 SQC 文件(其中带有嵌入式 SQL)的行号报错,而不是用 SQL 预处理器生成的 C 文件的行号报错。此外,#line 指令由源代码级调试程序间接使用,以便您可以在查看 SQC 源文件时进行调试。

–o    指定目标操作系统。注意,此选项必须与程序运行所使用的操作系统相匹配。在您的程序中会生成对特殊符号的引用。此符号在接口库中定义。如果您使用的操作系统说明或库是错误的,则链接程序会检测到一个错误。支持的操作系统有:

–p    标识嵌入式 SQL 文件所属的 UltraLite 项目。仅当处理是 UltraLite 应用程序一部分的文件时才应用它。

–q    不打印横幅。

–r    有关再入式代码的详细信息,请参见多线程代码或再入式代码的 SQLCA 管理

–s    设置预处理器放入 C 文件的最大大小的字符串。会使用一组字符('a''b''c' 等)对长度大于此值的字符串进行初始化。大多数 C 编译器都对可以处理的字符串大小有限制。此选项用于设置其上限。缺省值是 500。

–w    如果嵌入式 SQL不是 SQL/92 的指定集合的组成部分,此选项就会将其标记为警告。

可用的 level 值及其含义如下:

–x    将多字节字符串更改为转义序列,以便它们可以通过编译器。

–z    此选项指定归类序列。要查看建议使用的归类序列的列表,请在命令提示符下键入 dbinit –l

归类序列用于帮助预处理器理解在程序源代码中使用的字符,例如,识别出适合在标识符中使用的字母字符。如果没有指定 -z,则预处理器会尝试根据操作系统和 SQLLOCALE 环境变量确定要使用的合理归类。


Collection Contents 上一页 下一页 PDF