如果使用静态接口 (嵌入式 SQL、 static C++ API 或 static Java API),则可用的 SQL 范围较广,但应用程序使用的所有语句都必须在编译时指定。如果使用 UltraLite 组件开发应用程序,则动态SQL提供的SQL的范围较窄,但可以在运行时构造 SQL 语句。
当 UltraLite 程序尝试使用 UltraLite 中不支持的 SQL 语句或功能时,会导致出现 SQL 错误消息 "UltraLite中不可用的功能 "。动态 SQL 还可能返回语法错误。
•数据类型 UltraLite 支持 Adaptive Server Anywhere 中可用数据类型的子集。
如果在 Adaptive Server Anywhere 参考数据库中创建数据库,则可以使用多种数据类型。 UltraLite 生成器将那些在 UltraLite 中不受支持的 Adaptive Server Anywhere 数据类型转换为较小的基本类型集。如果使用模式管理器创建 UltraLite 数据库,则只能使用较小的基本类型集。
•标识符 标识符是数据库对象的名称,如列和表。 UltraLite 支持的标识符规则与 Adaptive Server Anywhere 支持的标识符规则相同。
•字符串 字符串用于保存数据库中的字符数据。 UltraLite 支持的字符串规则与 Adaptive Server Anywhere 支持的字符串规则相同。
如果从 Adaptive Server Anywhere 参考数据库中创建一个UltraLite 数据库,则字符串规则由运行 UltraLite 生成器时参考数据库中生效的数据库选项确定。 QUOTED_IDENTIFIER 选项对于设置字符串规则尤为重要。对于动态 SQL,就好像此选项始终处于 ON (Adaptive Server Anywhere 中的缺省设置)状态一样。
