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

SQL Anywhere 12.0.1 » SQL Anywhere 12 - 更改和升级 » 12.0.0 版中的新功能

 

UltraLiteJ 的新功能

以下列出 12.0.0 版中引入的 UltraLiteJ 新增功能。有关平台支持和版本支持的信息,请参见 [external link] http://www.sybase.com/detail?id=1061806

  • 对外部 BLOB 文件的支持   使用 BlackBerry OS 或 Java SE 的 UltraLiteJ 支持数据库文件的分区,因此外部文件现在可以用于存储大的 BLOB 值,并使用数据库中的特定列引用这些文件。这是作为 CREATE TABLE SQL 函数的一部分实现的。

    其中一种使用情况是:使 BlackBerry 应用程序使用较小但较快的持久存储库存储 UltraLiteJ 数据库,同时使用较大(但较慢)的闪存或 SD 卡存储大 BLOB 值,例如图片。这样做的额外好处就是:应用程序在捕获图片并将它们存储到数据库中时不会浪费电池电量,同时还能节省将图片复制到数据库中的时间。

    请参见CREATE TABLE 语句 [UltraLite]

  • BlackBerry 内部闪存和 SD 卡支持   UltraLiteJ 可以对内部闪存或 SD 卡执行 UltraLiteJ 数据库读写操作。请参见ConfigFileME 接口 [BlackBerry] [UltraLiteJ]

  • 对 UltraLiteJ 多个版本的支持   为了使 UltraLiteJ 的多个版本能够在 BlackBerry 和 Java ME 环境中共存,UltraLiteJ JAR 文件、COD 文件和 Java 程序包的名称中现在包含主版本号,如下所述:

    • JAR 文件的名称为 UltraLiteJ12.jar
    • COD 文件的名称为 UltraLiteJ12.cod
    • 所有公共类都包含在程序包 com.ianywhere.ultralitej12 中
    • 类 Unsigned64 已被移至程序包 com.ianywhere.ultralitej12 中

  • 加密和保护 UltraLiteJ 应用程序   添加了一个新示例来演示如何为 BlackBerry 智能手机编写非常安全的 UltraLiteJ 应用程序。有关详细信息,请参见 Samples\UltraLite\UltraLiteJ\BlackBerryEncryption\ReadMe.html。有关 BlackBerry 安全性的更全面的讨论,请阅读白皮书 "UltraLiteJ Security on BlackBerry Devices",网址为 [external link] http://www.sybase.com/detail_list?id=9814

  • 新 ST_Geometry 数据类型   ST_Geometry 数据类型支持可应用于空间值的函数。请参见ST_Geometry 类型

  • TIMESTAMP WITH TIMEZONE 数据类型   通过 TIMESTAMP WITH TIMEZONE 数据类型可以将日期和时间值与时区偏移存储在一起。时区偏移是早于或晚于 UTC 的分钟数。请参见UltraLite 初始化数据库实用程序 (ulinit)UltraLite timestamp_with_time_zone_format 创建参数

  • RAND SQL 函数支持   UltraLiteJ 支持 RAND SQL 函数。请参见RAND 函数 [Numeric]

  • 对 CREATE SYNCHRONIZATION PROFILE、ALTER SYNCHRONIZATION PROFILE、DROP SYNCHRONIZATION PROFILE 和 SYNCHRONIZE 的支持   可通过这些语句以另外一种方式来使用 SQL 组织同步参数和启动同步。现有 Connection.createSyncParm()、Connection.synchronize(SyncParm) 以及相关 API 依然有效。请参见:

  • 用于 CREATE TABLE 和 ALTER TABLE 的新的表约束   其它表约束 (SYNCHRONIZE ON | OFF | ALL) 可以在 CREATE TABLE 或 ALTER TABLE 语句中指定。请参见:

  • 新增了 IF EXISTS 子句   现在可以选择在 DROP INDEX、DROP PUBLICATION、DROP SYNCHRONIZATION PROFILE 和 DROP TABLE 语句中指定 IF EXISTS 子句。请参见:

  • 新增了 IF NOT EXISTS 子句   现在可以选择在 CREATE TABLE、CREATE INDEX、CREATE PUBLICATION 和 CREATE SYNCHRONIZATION PROFILE 语句中指定 IF NOT EXISTS 子句。请参见:

  • CREATE SYNCHRONIZATION PROFILE 语句现在也支持 OR REPLACE 子句   CREATE SYNCHRONIZATION PROFILE 语句现在还支持替换表的选项。请参见CREATE SYNCHRONIZATION PROFILE 语句 [UltraLite]

  • 通过 MobiLink 传输文件   UltraLiteJ 可以通过 MobiLink 服务器向远程数据库中上载文件以及从中下载文件。

    UltraLiteJ 的桌面版本可以将任何类型的文件从 MobiLink 下载到本地文件系统中,或将本地文件系统中任何类型的文件上载到 MobiLink 中。

    UltraLiteJ 的 BlackBerry OS 版本可以从 MobiLink 下载未加密且未进行模糊处理的有效数据库文件并将它们存储在对象存储区中,或将这些类型的数据库上载到 MobiLink 中。它可以将任何类型的文件从 MobiLink 下载到介质卡或闪存中,也可以将任何类型的文件从闪存和介质卡上载到 MobiLink 中。

    有关 UltraLiteJ 文件传输的详细信息,请参见FileTransfer 接口 [UltraLiteJ]

  • UltraLiteJ 数据库传输实用程序可以打开和传输 BlackBerry 文件系统中的数据库   UltraLiteJ 将根据数据库名称自动确定数据库的位置(对象存储区或文件系统)。如果名称以 file://(区分大小写)开头,则实用程序将尝试在文件系统中查找数据库,否则将在对象存储区中查找数据库。

  • BlackBerry 安装目录已重命名   BlackBerry 智能手机文件的安装目录已重命名以便使用最小 BlackBerry OS 版本。UltraLite\UltraLiteJ\Java MERIM11 目录现在为 UltraLite\UltraLiteJ\BlackBerry4.2,表示文件与 BlackBerry OS 4.2 及更新版本兼容。

  • ULjLoad 和 ULjUnload 对 blobfile 类型的支持   UltraLiteJ 装载和卸载实用程序支持 blobfile 类型的自定义实现。有关 blobfile 类型的 UltraLiteJ 数据库实现示例,请参见UltraLite Java 版本数据库卸载实用程序 (ULjUnload)UltraLite Java 版本数据库装载实用程序 (ULjLoad)

  • 改进的行限制算法   行限制算法已获改进,考虑到了以下这种情况:具有很多列的表中的行与具有很少列的表中的行相比,前者会占用更多的资源。

  • 系统表更改   对 UltraLiteJ 系统表进行了如下更改:

    • syscolumn 系统表中的 column_default_value 列支持 DEFAULT AUTOFILENAME 缺省子句   该列可以处理使用列缺省值 DEFAULT AUTOFILENAME 指定的 VARCHAR 类型。请参见syscolumn 系统表

    • syscolumn 系统表中新增了 filename_colid 列   该列用于存储模式定义中所引用的 file_name 列的列 ID;否则该列为空。请参见syscolumn 系统表

    • systable 系统表中新增了 table_partition_size 列   该列用于存储已定义的分区大小值。请参见systable 系统表

  • 加密性能更改   已对 EncryptionControl 接口进行了以下改进,以提高慢 CPU 环境中的性能:

    有关 EncryptionControl 接口的详细信息,请参见EncryptionControl 接口 [UltraLiteJ]

 新 UltraLiteJ API 功能