Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » UltraLite - 数据库管理和参考 » UltraLite 概述

 

UltraLite、UltraLite Java 版本和 SQL Anywhere 功能比较

下表说明了 UltraLite 和 SQL Anywhere 间的功能比较。除非另行规定,否则 UltraLite Java 版本支持 UltraLite 功能。

注意

UltraLite 数据库管理系统将应用程序的大小增加了 750-1000 KB,而 UltraLite Java 版本增加了 500 KB。SQL Anywhere 数据库、数据库服务器和同步客户端增加大约 6 MB。

功能 SQL Anywhere UltraLite 注意事项
事务处理和多表连接 X X
触发器、存储过程和视图 X
外部存储过程(可调用的外部 DLL) X
内置参照和实体完整性 X X

UltraLite Java 版本不强制外键约束。

请参见避免与外键循环相关的同步问题

级联更新和删除 X 限制 1 声明的参照完整性(在此处级联删除和更新)是 UltraLite 数据库不支持的功能,除了同步过程中为此目的级联删除时。
动态多数据库支持 X X
多线程应用程序支持 X X
行级锁定 X X
XML 卸载和装载实用程序 X

UltraLite 使用单独的管理工具完成 XML 的装载和卸载。这些功能不内置于运行时。

对于 UltraLite,请参见:

对于 UltraLite Java 版本,请参见:

XML 导出和导入实用程序 X
SQLX 功能 X
SQL 函数 X X

并非所有的 SQL 函数都可在 UltraLite 应用程序中使用。如果使用不受支持的函数,则会触发错误。 请参见UltraLite SQL 函数

SQL 语句 X 受限 与 SQL Anywhere 相比,在 UltraLite 中 SQL 语句的范围受到限制。 请参见UltraLite SQL 语句
集成 HTTP 服务器 X
用于数据库文件和网络通信的高度加密 X X
事件调度和处理 X X1 UltraLite 事件模型不同于 SQL Anywhere。
高性能、自行调优、基于开销的查询优化程序 X UltraLite 拥有查询优化程序,它不像 SQL Anywhere 中的优化程序那样范围广泛。因此,对于复杂查询,UltraLite 的执行效果不如 SQL Anywhere。
几个线程安全的 API 的选择 X X UltraLite 为应用程序开发人员提供独特的灵活体系结构,允许创建用于变化的和/或不同的部署环境的应用程序。请参见为 Windows Mobile 选择 UltraLite API
游标支持 X X 请参见UltraLite 和 UltraLite Java 版本数据库限制
动态调整高速缓存大小 X X1

UltraLite 允许设置数据库的初始,最小和/或最大高速缓存大小。UltraLite 会连续地对高速缓存的大小进行优化,直到达到最大大小(若指定)。请参见:

UltraLite Java 版本数据库仅支持固定高速缓存大小。

系统或应用程序失败后数据库的恢复 X X
二进制大对象 (BLOB) 支持 X X UltraLite 不能索引或比较 BLOB。
Windows 性能监视器集成 X
联机表和索引碎片整理 X
联机备份 X
从桌面操作系统将设备直接连接到 Windows Mobile 设备。 X1 允许桌面操作系统连接到 Windows Mobile 设备上部署的数据库之前,SQL Anywhere 数据库需要数据库服务器。在 UltraLite 上,以 WCE:\ 作为连接字符串的前缀。 请参见Windows Mobile
通过使用索引进行高性能更新和检索 X X

UltraLite 使用一种机制确定是使用索引还是通过直接扫描行来搜索每张表。

此外,可以散列索引来提高数据检索速度。 请参见UltraLite max_hash_size 创建参数

同步到 Oracle、DB2、Sybase Adaptive Server Enterprise、Microsoft SQL Server、MySQL 或 SQL Anywhere X X
内置同步 X 与 SQL Anywhere 部署不同,UltraLite 不需要客户端代理以进行同步。同步内置于 UltraLite 运行时以最小化需要部署的组件。 请参见UltraLite 客户端
进程中执行 X
计算列 X
声明的临时表/全局临时表 X
系统函数 X
时间戳列 X X

SQL Anywhere Transact-SQL 时间戳列是使用缺省的 DEFAULT TIMESTAMP 创建的。

UltraLite 时间戳列是使用缺省的 DEFAULT CURRENT TIMESTAMP 创建的。因此,当更新行时,UltraLite 不自动更新时间戳。

确定基于对象的所有权及访问的基于用户的权限模式 X UltraLite 主要设计用于不需要授权系统的单独用户数据库。但是,可以包含最多四个用户 ID 和口令,它们仅用于验证目的。这些用户可以访问所有数据库对象。 请参见UltraLite 用户
空间数据 X 受限 UltraLite 只支持点数据。
全文本数据 X

1 不可用于 UltraLite Java 版本。