以下列出了 10.0.1 版中在 SQL Anywhere 数据库和数据库服务器方面新增的功能。
已进行了如下更改以增强对加密的支持。
对 CREATE DATABASE 语句 ENCRYPTION 子句的扩展 CREATE DATABASE 语句的 ENCRYPTION 子句的语法已得到了扩展,允许您指定 SIMPLE 作为加密类型。此外,您还可以按任意顺序指定加密密钥和算法。请参见CREATE DATABASE 语句。
dbinit 和 dbunload -ea 选项的增强 dbinit 和 dbunload 的 -ea 选项现在接受 none 和 simple 作为加密类型。指定 none 会导致不加密。指定 simple 会导致简单加密。同样,缺省加密类型也已更改,它取决于 -ek、-et 或 -ep 选项是否与 -ea 一同指定。请参见初始化实用程序 (dbinit)和卸载实用程序 (dbunload)。
不建议使用 -e 选项。请参见行为更改和不建议使用的功能。
Mac OS X 上的高度加密 您现在可以在 Mac OS X 上使用 RSA 加密,来加密客户端/服务器通信。请参见加密 SQL Anywhere 客户端/服务器通信。
客户端语句高速缓存现在受到支持并且会在缺省状态下启用,从而在重复准备和删除同一 SQL 文本时,客户端会高速缓存此语句,使它被应用程序删除后,在服务器上处于准备好状态。这样就节省了数据库服务器删除和重新准备语句的额外工作量。使用客户端语句高速缓存需要 10.0.1 版客户端库和 10.0.1 版数据库服务器。
对支持客户端语句高速缓存进行了以下更改。
max_client_statements_cached 选项 此选项指定可在数据库服务器上保留为已高速缓存(准备好)的语句(即使已被应用程序删除)的最大数。请参见max_client_statements_cached 选项。
新连接和服务器属性 已添加了 ClientStmtCacheHits、ClientStmtCacheMisses 和 max_client_statements_cached 属性。请参见连接属性和数据库服务器属性。
新请求统计 已添加了语句高速缓存命中和语句高速缓存未命中统计功能。请参见请求统计。
SQL Flagger 功能已得到了增强,它能够更好地检测兼容性,并且加入了对更新标准的支持。例如,您现在可以测试与某个特定 SQL 标准的兼容性,或与 UltraLite SQL 的兼容性。
为支持这些增强功能,进行了以下更改:
新 SQLFLAGGER 函数 您可以使用新 SQLFLAGGER 函数来测试 SQL 语句是否符合指定的 SQL 标准,而无需实际运行此语句。请参见SQLFLAGGER 函数 [Miscellaneous]。
新 sa_ansi_standard_packages 系统过程 使用新 sa_ansi_standard_packages 系统过程,您可以指定 SQL 标准和 SQL 语句,并获得语句执行期间可能会用到的非核心 SQL 扩展的列表。请参见sa_ansi_standard_packages 系统过程。
您必须升级数据库才能使用此功能。请参见升级版本 10 及更高版本数据库。
sql_flagger_error_level 和 sql_flagger_warning_level 数据库选项的新值 为 sql_flagger_error_level 和 sql_flagger_warning_level 数据库选项提供了几个新值,以支持 SQL/1999 和 SQL/2003 标准。请参见sql_flagger_error_level 选项和sql_flagger_warning_level 选项。
SQL 预处理器 (sqlpp) -e 和 -w 选项的新值 为 SQL 预处理器 (sqlpp) 的 -e 和 -w 选项提供了几个新值,以支持 SQL/1999 和 SQL/2003 标准。请参见SQL 预处理器。
在 SQL 语句和函数方面进行了以下增强。
START DATABASE 语句增强 START DATABASE 语句目前支持 DIRECTORY 子句,此子句能够使您指定数据库的 dbspace 文件所在的目录。请参见START DATABASE 语句。
INSERT、UPDATE、DELETE、SELECT、UNION、EXCEPT 和 INTERSECT 语句包含一个 OPTION 子句 INSERT、UPDATE、DELETE、SELECT、UNION、EXCEPT 和 INTERSECT 语句支持 OPTION 子句,此子句控制语句使用实例化视图的方式、指定优化查询的方式,并且还能够替换以下数据库选项的设置:
请参见:
HTML_DECODE 函数 HTML_DECODE 函数现在可以解码更多作为数字实体给出的 Unicode 代码点,如商标符号 (™)。如果代码点无法用数据库字符集表示,它将以代码点形式存在。从前,小于 0x7F 的代码点会转换为字符(对于某些字符集,小于 0xFF 的代码点会转换为字符),而所有其它代码点将继续以代码点形式存在。请参见HTML_DECODE 函数 [Miscellaneous]。
SQL Anywhere 目前支持在创建数据库时进行归类定制。为支持归类定制进行了如下更改:
CREATE DATABASE 语句的增强 当使用 CREATE DATABASE 语句或初始化实用程序 (dbinit) 创建数据库时,您现在可以指定定制选项,以便能够对字符的排序和比较进行更多的控制。
对于 CREATE DATABASE 语句,可使用 COLLATION 和 NCHAR COLLATION 子句来支持归类定制。请参见CREATE DATABASE 语句。
对于初始化实用程序,可使用 -z 和 -zn 选项来支持归类定制。请参见初始化实用程序 (dbinit)。
使用归类定制选项创建的数据库无法使用 10.0.1 之前版本的数据库服务器启动。
如果想要在现有数据库中使用归类定制,您必须创建支持归类定制的新 10.0.1 版数据库,卸载现有数据库,然后将数据库重装为新 10.0.1 版数据库。请参见重建版本 10 及更高版本数据库。
新 HasCollationTailoring 数据库属性 HasCollationTailoring 是一个新数据库属性,表示创建数据库时是否启用了定制支持。请参见数据库属性。
新增扩展属性值 当查询 Collation、NCHARCollation 和 CatalogCollation 数据库属性时,可使用以下新增的 DB_EXTENDED_PROPERTY 值:CaseSensitivity、AccentSensitive、PunctuationSensitivity、Properties 和 Specification。请参见DB_EXTENDED_PROPERTY 函数 [System]。
SORTKEY 和 COMPARE 函数的增强 除了将归类名作为参数接受外,SORTKEY 和 COMPARE 函数现在将相同的带括号归类定制选项集作为 CREATE DATABASE 语句接受。请参见SORTKEY 函数 [String]和COMPARE 函数 [String]。
进行了以下增强来提高 HTTP 和 SOAP 标头的可配置性:
改善的可配置性 使用 CREATE PROCEDURE 和 CREATE FUNCTION 语句的新 SET 子句,您能够修改 HTTP 和 SOAP 协议的以下选项:客户端使用的 HTTP 版本、是否使用分块、以及执行 SOAP 请求时要调用的 SOAP 操作名(如果与过程名或函数名不同)。请参见CREATE PROCEDURE 语句(Web 客户端)。
HTTP 标头规范 CREATE PROCEDURE 和 CREATE FUNCTION 语句的 HEADER 子句的语法已得到了扩展,这样一来您就能取消给定的 HTTP 请求标头,或为它提供一个空值。此功能可扩展到自动生成的 HTTP 请求标头,这些标头在之前的版本中是不能修改的。请参见CREATE PROCEDURE 语句(Web 客户端)和HTTP 请求标头管理。
对 SOAP:RPC 客户端数据类型的支持 可使用 CREATE SERVICE 语句的 DATATYPE 子句启用数据类型设置。数据类型信息包含在参数输入和结果集输出或所有 SOAP 服务格式的响应的 XML 编码中。这样一来便不再需要客户端代码将参数显式转换为字符串,从而简化了从 SOAP 工具箱进行参数传递。请参见使用数据类型(仅用于 SOAP)。
Mac OS X 上支持的 HTTPS 在以前的版本中,Mac OS X 上只支持 HTTP 协议。现在,当将 SQL Anywhere 数据库服务器作为 Web 服务器在 Mac OS X 上运行时,可以使用 HTTPS。请参见-xs dbeng12/dbsrv12 服务器选项和将 SQL Anywhere 用作 HTTP Web 服务器。
数据库镜像功能中增加了以下增强:
为数据库镜像指定首选数据库服务器 您现在可以指定哪个数据库服务器应该在镜像系统中担当主服务器的角色。请参见-xp dbsrv12 数据库选项和指定首选数据库服务器。
启动从主服务器到镜像服务器的数据库镜像故障转移 现在使用 ALTER DATABASE 语句的 SET PARTNER FAILOVER 子句,可以启动从主服务器到镜像服务器的故障转移。请参见ALTER DATABASE 语句和启动主服务器上的故障转移。
[触发器] 文件夹列名称已更改 在 [触发器] 文件夹中,[表名称] 和 [表所有者] 列已被 [对象名称]、[对象所有者] 和 [对象类型] 列替换。缺省情况下不会显示 [对象类型] 列,但是可通过选择 [视图] » [选择列] 来显示它。
[触发器] 选项卡已添加到 [视图属性] 窗口 非实例化视图的属性窗口现在具有列出视图的 INSTEAD OF 触发器的 [触发器] 选项卡。
INSTEAD OF 触发器支持已添加到 [创建触发器向导] [创建触发器向导] 中新增了几处增强,以支持 INSTEAD OF 触发器,包括选择是否为表或非实例化视图创建触发器的选项。请参见创建触发器。
归类定制支持已添加到 [创建数据库向导] 如果所选数据库服务器是 10.0.1 或之后版本的服务器,或者如果已选择通过启动新数据库服务器在本地计算机上创建数据库,则 [创建数据库向导] 现在包含归类定制页。
简单 DML 语句的计划高速缓存 计划高速缓存已扩展为包括可以跳过查询的 INSERT、UPDATE 和 DELETE 语句(简单语句)。请参见计划高速缓存。
具有左和右外连接的实例化视图在基于开销的优化期间可以使用 从前,允许在实例化视图的定义中使用左和右外连接。但是,这会导致无法在基于开销的优化中使用实例化视图。现在,则可以在基于开销的优化期间使用具有左或右外连接的实例化视图。请参见使用实例化视图提高性能。
对 INSTEAD OF 触发器的支持 BEFORE 或 AFTER 触发器分别在触发操作前或后触发。INSTEAD OF 触发器取代了触发操作。INSTEAD OF 触发器能够使您在进行插入、更新或删除操作期间,对触发器的行为进行更多的控制。请参见CREATE TRIGGER 语句。
DBTools 增强 现在您可以通过使用 DBCreatedVersion 函数,来确定数据库是使用 SQL Anywhere 10.0.0 版还是之前版本创建的,而无需启动数据库。请参见DBCreatedVersion 函数。
OLAP 增强 现在支持两个新增的窗口集合函数 FIRST_VALUE 和 LAST_VALUE。这两个函数会分别返回窗口的第一个值或最后一个值,从而不必再使用自连接返回这些值。然后您可以将这些值作为在此窗口执行的进一步计算中的基线。请参见FIRST_VALUE 函数 [Aggregate]和LAST_VALUE 函数 [Aggregate]。
Unix 增强了对 IPv6 的支持 在 Unix 上,您可以指定一个接口标识符或接口名称,作为 IPv6 地址的一部分。在 Linux(内核 2.6.13 及之后版本)上,当您在客户端或服务器上指定 IP 地址时(例如,在使用 HOST=、MYIP= 或 BROADCAST= TCP 协议选项时),必须使用一个接口标识符。请参见SQL Anywhere 中的 IPv6 支持。
对 TDS DATE 和 TIME 数据类型的支持 TDS DATE 和 TDS TIME 数据类型最近已引入 TDS 客户端。使用 Open Client 15 或更新版本或者使用 jConnect 的 EBF 的应用程序,现在可将日期和时间列做为 TDS DATE 或 TDS TIME 值而非 TDS DATETIME 值读取。
SQL Anywhere 已进行了增强,因此基于 TDS 的应用程序可将日期和时间数据作为 TDS DATE 和 TDS TIME 值读取。使用旧版 Open Client 或 jConnect 的应用程序,将继续将日期和时间数据作为 TDS DATETIME 值读取。注意:那些不是基于 TDS 的应用程序(使用嵌入式 SQL、ODBC 或 iAnywhere JDBC 驱动程序的应用程序)始终能够将日期和时间数据作为日期和时间值读取。
列出可用字符集编码的新 dbinit 选项 使用初始化实用程序 (dbinit) -le 选项列出数据库的可用字符集编码。请参见初始化实用程序 (dbinit)。
新 -ds 服务器选项 -ds 服务器选项允许您指定数据库的 dbspace 文件所在的目录。请参见-ds dbeng12/dbsrv12 数据库选项。
SADbType.Xml 数据类型 已将 SADbType.Xml 枚举常量添加到 SQL Anywhere .NET 提供程序。
SQL Anywhere SNMP Extension Agent 的动态陷阱支持单位 设置动态陷阱时,在指定陷阱的数字值时,现在可使用 k、m、g 或 t 将单位分别指定为千字节 (KB)、兆字节 (MB)、千兆字节 (GB) 或千吉字节 (TB)。请参见创建动态陷阱。
为 iAnywhere Solutions Oracle 驱动程序创建 ODBC 数据源 现在可以使用数据源实用程序 (dbdsn),通过指定 -or 选项,为 iAnywhere Solutions Oracle 驱动程序创建 ODBC 数据源。请参见数据源实用程序 (dbdsn)。
对提交错误报告的窗口的增强 提示您向 iAnywhere 提交错误报告的 dbsupport 窗口现在包含一个 [查看错误报告] 按钮,因此您可以在提交错误报告前查看其中包含的信息。
![]() |
使用DocCommentXchange 讨论此页。
|
版权 © 2010, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.0 |