UltraLite 数据库不提供以下 Adaptive Server Anywhere 功能:
◆级联更新和删除
某些应用程序依赖于声明的参照完整性来实现业务规则。 UltraLite 数据库不提供这些功能,但同步下载期间会自动级联更新和删除。
任何企图删除外键中有对应值的主键的操作都会失败,并返回错误。任何企图在外键引用原始值时更新主键值操作也会失败。
◆检查约束
在 UltraLite 数据库中不能包括表或列的检查约束。
◆计算列
在 UltraLite 数据库中不能包括计算列。
◆全局临时表
UltraLite 不能识别全局临时表的临时特性。您应将这些临时表视为永久基表使用。
◆声明的临时表
在 UltraLite 应用程序中不能声明临时表。
◆存储过程
在 UltraLite 应用程序中不能调用存储过程或用户定义的函数。
◆函数
并非所有的 SQL 函数都可在 UltraLite 应用程序中使用。
使用不受支持的函数会导致出现 "UltraLite 中不可用的功能 " 错误。
◆触发器
UltraLite 数据库不支持触发器。
◆系统表访问
在 UltraLite 数据库中没有系统表。
◆系统函数
在 UltraLite 应用程序中不能使用 Adaptive Server Anywhere 系统函数,包括属性函数。
◆数据库中的Java
在查询中不能包括 Java 方法,在数据库中也不能使用任何其它的 Java 功能。
◆时间戳列
在 UltraLite 数据库中不能使用 Transact-SQL 时间戳列。 Transact-SQL 时间戳列是用下列缺省语句创建的:
DEFAULT TIMESTAMP
可以使用以下语句创建的列:
DEFAULT CURRENT TIMESTAMP
这两种列的行为是有差异的:在更新行时, DEFAULT CURRENT TIMESTAMP 列不会自动更新,而DEFAULT TIMESTAMP 列会自动更新。如果您希望使用 DEFAULT CURRENT TIMESTAMP 创建的列能够反映最近的更新时间,则必须显式更新这些列。