Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103546169
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: Sybase

2008-05-17 22:17:00

  来源:

在 UltraLite 中,可用于表示数据的数据类型和可用于访问这些数据的SQL功能取决于您所采用的开发。

如果使用静态接口 (嵌入式 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 中的缺省设置)状态一样。

字符串的比较结果和排序顺序取决于数据库和字符集是否区分大小写。这些是在创建数据库时设置的。

•函数 除为数不多的微小差异外, UltraLite 支持的函数范围与Adaptive Server Anywhere 支持的函数范围相同。静态接口 (如嵌入式 SQL)支持的函数与动态 SQL 支持的函数相同。

•表达式 通常采用列引用的形式,通过将数据与符或函数进行组合构成表达式。

Adaptive Server Anywhere 提供了多个运算符用于构成表达式。

如果使用静态接口 (嵌入式 SQL、 static C++ API 或 static Java API)开发 UltraLite 应用程序,则这些运算符可用。但有一种例外情况,就是在 Adaptive Server Anywhere 中可使用 SQL 变量构成表达式。在 UltraLite 应用程序中不能使用 SQL 变量(包括全局变量)。但 @@identity 全局变量除外,您可以在UltraLite 应用程序中使用该变量。

在支持的表达式范围方面,动态 SQL 受到的限制多于静态SQL。例如,动态 SQL 不支持子查询。

阅读(957) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~