InformixV10中的新功能

安全性增强


IBM Informix Dynamic Server 10.0 在数据库服务器的安全性、加密、认证和可用性方面有显著改进。


所有平台上的外部认证

外部认证现在可以用于所有平台之上,包括 Windows 操作系统。

列级别加密

您可以使用新的 SQL 语句“SET ENCRYPTION PASSWORD”来进行列级别加密以提高数据的机密性。新的内置 SQL
函数提供用于加密和解密字符、BLOB 和 CLOB
数据的方法。系统目录将不能识别哪些列包含加密的数据,并且同一列可以包含加密和未加密的值。此安全性增强功能支持数据机密性和数据完整性。

在 UNIX 或 Linux 上启动之前,服务器实用程序检查安全环境

V9.40.xC3 上首先可使用此功能。当您在 UNIX 或 Linux 上启动数据库服务器时,服务器实用程序现在会通过检查以下内容来确定环境是否安全:

  • $INFORMIXDIR 上的许可权和其下的一些目录正确。
  • ONCONFIG 文件的许可权正确。该文件必须属于 DBSA 组。其他用户对该文件必须没有写许可权。
  • sqlhosts 文件的许可权正确。
  • 文件名 $INFORMIXDIR/etc/onconfig.std$INFORMIXDIR/etc/$ONCONFIG 的长度必须都少于 256 个字符。

如果这些条件的任意一个的测试失败,则实用程序将退出并带有错误消息。请参阅《IBM Informix: Dynamic Server 管理员指南》以获取更多详细信息。

限制 DataBlade 模块和 UDR 的注册

DBSA(数据库服务器管理员)可以使用称为 EXTEND 的新的内置角色来指定哪些用户可以注册、删除或替换包含 EXTERNAL
NAME 子句的 UDR。用户定义的例程可以使用数据库服务器外部和可能包含有害代码的共享对象文件。DBSA 可以使用 GRANT
语句来授予用户(通常为本地数据库的 DBA)EXTEND 角色,或可以使用 REVOKE 来从用户撤销该角色。DBSA
可以通过设置为“off”(新的 IFX_EXTEND_ROLE 配置参数)来禁用此功能。此功能意在提高安全性和控制可访问性。

防止拒绝服务攻击

Dynamic
Server 提供可用来处理连接的多种侦听器线程,并针对不完全连接在侦听器 VP
的可用性方面强加了限制。通过使敌对的拒绝服务攻击更难压制处理连接的侦听器 VP,此功能降低了敌对的拒绝服务攻击的风险。缺省不完全连接超时周期从
60 秒减少为 10 秒。不完全连接的缺省最大数为 1024。

您可以通过以下两个新的配置参数来定制此功能:

  • LISTEN_TIMEOUT。
    设置不完全连接超时周期。
  • MAX_INCOMPLETE_CONNECTIONS。
    限制连接的不完全请求数。

您可以在数据库服务器正在运行时,动态地更改这些配置参数的值。


服务器可用性增强


服务器可用性增强包括易于管理、可伸缩性和高可用性的功能。

配置页面大小

此功能增加了创建数据库空间时对指定标准或临时数据库空间的页面大小的支持。如果您需要比缺省页面大小可用的密钥长度更长的密钥长度,则您可能会希
望指定非缺省页面大小。根数据库空间为缺省页面大小。如果您希望指定页面大小,则大小必需为缺省页面大小的整数倍,并且小于 16 千字节。

您还可以使用新的 BUFFERPOOL 配置参数来创建对应于数据库空间页面大小的缓冲池。

定义缓冲池

您可以使用新的 BUFFERPOOL 配置参数或 onparams 实用程序来为对应于数据库空间使用的每个唯一页面大小的页面定义缓冲池。当您使用 BUFFERPOOL 配置参数或 onparams 实用程序来定义缓冲池时,您可以指定有关缓冲池的信息,这包括缓冲池大小、缓冲池中的 LRUS 数、缓冲池中的缓冲区数以及 lru_min_dirty 和 lru_max_dirty 值。

BUFFERS、LRUS、LRU_MAX_DIRTY 和 LRU_MIN_DIRTY 配置参数已不再使用。使用早于 V10.0 的
BUFFERS、LRUS、LRU_MAX_DIRTY 和 LRU_MIN_DIRTY 配置参数指定的信息现在使用 BUFFERPOOL
配置参数或 onparams 实用程序来指定。您使用 BUFFERPOOL 配置参数或 onparams 实用程序输入的信息将会取代先前使用不推荐的参数指定的所有信息。

管理表空间 tblsapce

您可以更加灵活地管理表空间 tblsapce
表空间 tblspace 是描述提供的数据库空间中所有表空间的位置和结构的页面集合。使用 onspaces 实用程序来移动或删除包含表空间 tblspace 的块。
您还可以设置配置参数,以在创建了数据库空间时指定第一个扩展数据块的大小以及后续的扩展数据块的大小。
此功能允许您减少表空间 tblspace 扩展数据块的数目,并减少这些扩展数据块位于非主块中的情况发生的频率。

以单用户方式管理数据库服务器

作为数据库管理员,您可以使用新的单用户方式,该方式是静默方式和联机方式之间的中间方式。当服务器是单用户方式时,则仅接受用户 informix 的新连接。
当没有其他用户与数据库服务器连接时,使用此方式来执行所有维护任务,包括需要执行 SQL 和 DDL 语句的任务。管理员还可以执行在联机方式中可用的所有其它功能。您可以通过使用 oninitonmode 实用程序或 IBM Informix Server Administrator(ISA)来设置此方式。

通过缺省角色管理访问特权

您可以创建一个角色,对其授予特权,并将其指定为每个数据库级别的个别用户或 PUBLIC
的缺省角色。每个被授权缺省角色的用户将接收该角色的特权以及所有单独授权给该用户的其它特权。当用户连接到数据库时,缺省角色将自动生效,而不需要使用
SET ROLE 语句来启用它。GRANT、REVOKE 和 SET ROLE
语句的新语法支持此功能,这可以在会话期间(在此期间用户可以运行不包含 GRANT 语句的应用程序)在数据库对象上为用户集合提供相应的特权。

重命名数据库空间

如果您是用户 informix 或具有 DBA
特权,并且数据库服务器是单用户方式或静默方式(但不是联机方式),则您可以对先前定义的标准数据库空间进行重命名。如果您正在现有的数据库空间中重新组
织数据,并需要更改数据库空间名称,则您可能希望对标准数据库空间进行重命名。重命名数据库空间操作仅更改数据库空间名称;它不会重新组织数据。

在数据库空间内创建表或索引的多个分区

对于使用基于表达式的或循环分布方案的分段表,您现在可以在单个数据库空间中创建多个分区,这些分区是表或索引的页面集合。使用新的 PARTITION 关键字和分区名称,您可以创建带有多个分区的表和索引,并且您可以创建、删除和更改分区分段。

由于您可以在一个数据库空间内创建同一个表或索引的已命名的分段,所以您可以减少分段表或索引所需的数据库空间总数。在单个数据库空间中存储多个表
分段与在不同的数据库空间中存储每个分段表达式相比提高了查询性能。此功能提高了数据库空间的性能,并简化了对数据库空间的管理。

指定触发警报程序的事件

您可以使用新的警报配置参数 ALRM_ALL_EVENTS,指定事件警报程序是为 MSGPATH 中记录的所有事件运行还是仅为指定的值得通知的事件运行。

指定共享内存大小大于 4 GB

您现在可以指定创建的共享内存的段与您的操作系统平台或 SHMMAX 参数所允许的一样大。

通过外部备份和恢复来设置 HDR

您可以使用标准 ON–Bar 或外部备份和恢复的 ontape 命令来设置 High-Availability Data Replication。这样做可以极大地减少初始设置时间。

向 HDR 辅助服务器重新发送索引

您可以重新发送 HDR 对中的辅助服务器上损坏的索引。重新发送索引比在主服务器上删除然后重新构建索引更快。
此功能增加了 HDR 主服务器的可用性。

在 Windows 上对 Dynamic Server 实例进行重命名

IBM Informix Server Instance Manager 实用程序具有更改 Windows 平台上的 Dynamic Server 实例名称的选项。您不再需要卸载和重新安装服务器或创建新实例并重新装入数据来更改实例的名称了。

确定版本信息

您现在可以连同所有服务器实用程序一起使用新的 -version 选项,来提供有关构建操作系统、构建号和构建日期的详细信息。-version 选项比现有的 -V 选项提供更多的信息。此功能使 DBA 和技术支持人员能够跟踪版本和构建机器信息、在安装产品之前访问文档、确保准备好安装产品和诊断问题。

改进的转换和复原框架

当您转换或还原为不同版本的 Dynamic Server 时,您可以使用 Dynamic Server 转换和还原脚本来手工升级或还原 High-Performance
Loader onpload 数据库。

此外,您可以与 iploadonpladm 实用程序一起使用 IFX_ONPLOAD_AUTO_UPGRADE 环境变量,以在您迁移到新版本的数据库服务器之后使用 iploadonpladm 命令首次调用 HPL 实用程序时,自动升级 onpload 数据库。

IBM Informix Server Administrator 增强

IBM
Informix Server Administrator(ISA)支持以下新功能:

IP 地址支持的 IPv6 格式

您可以在 Dynamic Server 上将 IPv6 格式用于 IP 地址。支持 JDK 1.4 的 IBM Informix
JDBC 驱动程序版本 3.0 支持 IPv6。即,对连接 URL 进行语法分析的代码可以处理更长的(128 位方式)IPv6 地址(以及
IPv4 格式)。此 IP 地址可以是 IPv6 文字。


性能增强


性能增强包括提高的查询性能和恢复时间。除了以下讨论的主题,还在以下地方进行了增强来提高性能:

  • XA 事务
  • 嵌套的符合 ANSI 的左外连接
  • 子查询
  • 全外连接
为非 PDQ 的查询分配内存

在 9.40.xC4 中首先可使用此功能。您可以指定对非 PDQ 查询分配多少内存。缺省的 128K 对于指定 ORDER
BY、GROUP BY、散列连接的查询或其它内存密集型选项可能不够。使用新的配置参数 DS_NONPDQ_QUERY_MEM
来指定比缺省情况下分配给非 PDQ 查询的 128K 更多的内存。onstatonmode 和 ON-Monitor 实用程序支持此配置参数。

存储和应用外部优化程序伪指令

您可以创建、保存并重新使用外部优化程序伪指令。在 Dynamic Server 的前发行版中,优化程序伪指令作为 DML
语句中的文本字符串存在,但是未存储为不同的数据库对象。外部优化程序伪指令在不可能为短期解决问题而重新编写查询时(例如:当查询性能较差时)很有用。
在此发行版中,DBA 或 Administrator(作为用户 informix)可以创建外部优化程序伪指令并将其应用于后续查询,而无需更改现有的应用程序代码。作为新的 SQL 语句 SAVE EXTERNAL DIRECTIVES 实现此功能,以在系统目录的新 sysdirectives 表中创建和注册外部优化程序伪指令。使用新的 IFX_EXTDIRECTIVES 环境变量或 IFX_EXTDIRECTIVES 配置参数来启用此功能。

使用模糊检查点快速复原

您可以设置两个新的配置参数(FAST_RESTART_PHYSLOG 和 FAST_RESTART_CKPT_FUZZYLOG)来减少数据库服务器恢复所需的时间。当使用模糊检查点时,这通过提高恢复性能来支持高可用性。

动态设置 OPTCOMPIND 环境变量


在 V9.40.UC3 上首先可使用此功能。您可以使用新的 SET ENVIRONMENT
OPTCOMPIND 语句来为当前会话动态地设置 OPTCOMPIND 环境变量的值。例如:您可能希望更改不同类型查询的值。对于 DSS 查询,您应将 OPTCOMPIND
的值设置为 2 或 1,并且您应确保隔离级别未设置为 REPEATABLE READ。对于 OLTP 查询,您可以将值设置为 0 或
1,并且隔离级别未设置为 REPEATABLE READ。您使用此语句输入的值优先于在 ONCONFIG
文件中指定的当前设置。当当前会话终止时,OPTCOMPIND 环境变量的缺省设置将恢复。您执行的 SET ENVIRONMENT OPTCOMPIND 语句不会影响其它的用户会话。


SQL 增强


SQL 增强提高了数据库可用性。

创建和删除索引而无需锁定表


当数据库及其关联表持续可用时,您可以使用新的 CREATE INDEX ONLINE 和 DROP INDEX ONLINE 语句在联机环境中创建和删除索引。这些 SQL 语句使您能够创建和删除索引,且无需在索引构建或删除的持续时间内对表进行访问锁定。

备份与恢复增强


备份和恢复增强提高了性能并改进了调试。

通过 Archecker 执行表的时间点恢复

您可以使用 archecker 实用程序来从归档恢复特定的表。
表可以恢复到特定的时间点。这使您能够恢复数据的特定部分,而无需执行冗长的整个归档恢复。可以在未恢复另一个实例上的整个数据库服务器的情况下恢复数据。为了执行表级别恢复,archecker 支持使用类似 SQL 的语法来指定源和目标表模式的命令文件。

查看 ON-Bar 备份的逻辑日志

您现在可以查看 ON-Bar 备份的逻辑日志,类似于使用 onlog 实用程序来查看 ontape 实用程序备份的逻辑日志。
如果您需要执行恢复,则您可以查看 ON-Bar 备份的原来的逻辑日志文件,以发现确切的问题。

ON-Bar 增强的调试

您现在可以在 ON-Bar 正在运行时,更改 ON-Bar 调试级别。
通过仅在需要时才设置高调试级别,您可以节省大量时间和磁盘空间。您可以使用 BAR_DEBUG 配置参数来设置调试级别。BAR_DEBUG
值的范围为 0-9,0 为没有调试信息,9 为最详细的调试信息。您可以尽可能频繁地更改 BAR_DEBUG 的值。类似于 onstat -m命令,您可以使用 ON-Bar 来从 onbar 活动日志文件打印最近的 ON-Bar 活动。

ontape 实用程序可以使用标准 I/O

您现在可以指定 ontape 使用标准 I/O 而非使用磁带设备或磁盘文件。在备份期间,ontape 将向 stdout(标准输出)写入数据。恢复期间,ontape 会从 stdin(标准输入)读取数据。指定 stdout 或 stdin 使 ontape
能够将管道(一种 OS
提供的缓冲机制,用来将不同的程序与数据流连接)用于归档和恢复。通过使用管道,数据可由其它程序处理,而无需将数据保存在文件或磁带设备中。例如:您可
以使用压缩来保存介质空间,为了安全,使用克隆来复制归档,或将数据恢复到另一个服务器实例上。
通过将数据恢复到辅助服务器,同时跳过将数据保存到文件或磁盘的中间步骤,此功能对于设置 High-Data Availability
Replication 尤其有效。

使用 ontape 的外部备份和恢复


您可以使用 ontape 实用程序来执行外部备份和恢复过程。

应用程序开发增强


应用程序开发增强提供更新的 JDBC 标准一致性和对 .NET 应用程序的支持。

支持 JDBC 3.0 规范

IBM Informix JDBC 驱动程序版本 3.0 支持符合 Sun Microsystems JDBC 3.0 规范的以下功能:

  • 使用 JDBC 3.0 规范中介绍的所有方法来内部更新 BLOB 和 CLOB 数据类型。此功能┱沽?updatexxx 方法,以包含通过定位器实现的 JDBC 类型。此外,继续支持 Informix extension 方法。
  • 指定和控制 ResultSet 可保持性,并协调 Informix JDBC 扩展实现。
  • 从数据库服务器检索自动生成的关键字。新支持包含用来指示数据源支持此功能的 DatabaseMetaData 方法、用来指示可以请求关键字的准备和执行方法以及用来从数据源检索关键字的 Statement.GeneratedKeys 方法。
  • 通过 CallableStatement 界面访问 Dynamic Server 中的多个 INOUT 方式参数。
  • 对 JDBC 客户机提供有效的大对象描述符和数据,以将二进制数据类型作为 OUT 参数来发送或检索。
    Dynamic Server 和 JDBC 之间的描述符和数据交换与现有机制(通过该机制,当前数据值被换成 JDBC 的结果集方法)一致。在二进制类型 OUT(或 INOUT)参数有效的数据库服务器上,SPL 是 UDR 的唯一语言。

此外,J/Foundation 支持 JRE V1.4 和 JDBC 3.0 规范。

IBM Informix .NET 提供程序支持 .NET 应用程序

IBM Informix .NET 提供程序使 Windows .NET 应用程序在 IBM Informix
数据库中能够访问和操纵数据。IBM Informix
.NET 提供程序是包括由 Microsoft .NET 应用程序使用的数据访问 API 的运行时库。它包含专门类的集合,这些专门类实现标准
Microsoft ADO.NET 界面并在 IBM Informix 数据库(数据源)和 .NET 应用程序之间作为网桥服务。

以任何 .NET 支持的语言编写的 Windows 客户机应用程序都可以使用 IBM Informix .NET 提供程序。客户机应用程序的一些示例如下:

  • Visual BASIC .NET 应用程序
  • Visual C# .NET 应用程序
  • Visual J# .NET 应用程序
  • ASP.NET Web 应用程序

IBM Informix .NET 提供程序提供连接编辑器对话框、命令编辑器对话框和作为 Microsoft
Visual Studio 加载件的数据适配器向导。

SQL 增强


除了在扩展性增强一节中所描述的增强以外,以下对结构化查询语言(SQL)的 IBM Informix 方言的附加更改也已在 Dynamic Server V9.4 中得以实现。

视图上的 INSTEAD OF 触发器

CREATE TRIGGER 语句已增强至可支持视图上的 INSTEAD OF 触发器。您可以在激活触发器的指定视图上定义 INSERT、UPDATE 或 DELETE 事件。数据库服务器执行 INSTEAD OF 触发器的 Action 子句,而不是直接执行所触发的 DML 事件。
该功能提供更新基础视图表(包含来自多个表的列)的机制;这些视图在 Dynamic Server 的较早发行版中不可更新。

有关更多信息,请参阅《IBM Informix: SQL 指南:语法》。

增强 SELECT 语句语法

SELECT 语句的语法规则已得以增强。

有关这些功能的更多信息,请参阅《IBM Informix: SQL 指南:语法》。

按不在 Projection 列表中的列或表达式来排序

ORDER BY 子句现在可以包含不显示在 Projection 子句的选择列表中的列名或表达式。例如:以下查询现在是有效的:

SELECT stock_num, manu_code FROM stock ORDER BY unit_price

较早发行版要求在 Projection 子句中也有 unit_price

FROM 子句中的迭代器 UDR

如在在 SELECT 语句的 FROM 子句中使用迭代器函数一节中所述,迭代器函数现在在 SELECT 语句的 FROM 子句中是有效的。

在多于 16 列上的函数型索引

函数型索引是接受列名作为参数的 UDR,它的返回值指定为 CREATE INDEX 语句中的索引键。
在前 Dynamic Server 发行版中,列数限制为不得多于 16。

但是,在 V9.4 中,列数(可以是函数型索引的参数)是依赖于语言的。对于用 C 语言编写的 UDR,函数型索引可以有多达 102 个键部分。用 SPL 或 Java 语言定义的函数型索引可以有多达 341 个键部分。

有关更多信息,请参阅《IBM Informix: SQL 参考指南》。

增强动态查询支持

DESCRIBE 语句现在可识别 OUTPUT 关键字。新的动态 SQL 语句 DESCRIBE INPUT 可以提供关于已准备的 DML 语句的已检索列及动态参数的信息。

有关这些功能的更多信息,请参阅《IBM Informix: SQL 指南:语法》。

DESCRIBE INPUT 语句

Dynamic Server 前发行版中的 DESCRIBE 语句无法提供关于已准备的 INSERT 或 SELECT 语句的 WHERE 子句的输入参数的信息。
如果设置了 IFX_UPDDESC 环境变量,前发行版可以提供对 UPDATE 参数的有限支持。在本发行版中,您可以在 DESCRIBE 语句中指定 INPUT 关键字,从而返回关于已准备的 DML 语句的每个输入参数的信息,包括数据类型、标识和长度(以字节计)。

DESCRIBE OUTPUT 语句

执行动态 SQL 应用程序的客户机系统可以使用 DESCRIBE OUTPUT 语句(或只是 DESCRIBE,因为 OUTPUT 关键字是可选的)以获取关于已准备的 DML 语句的输出参数的信息。(这是 CSDK 功能,但它需要在早于 V9.4 的发行版中数据库服务器未提供给客户机应用程序的信息。)

会话级别的非缺省对照

在前 Dynamic Server 发行版中,如果语言环境定义了 COLLATION,则数据库服务器根据 DB_LOCALE 环境变量指定的该语言环境的本地化对照顺序来对 NCHAR 和 NVARCHAR 值排序;否则,所有排序操作遵循代码集顺序。

在本发行版中,新的 SET COLLATION 语句可以指定另一语言环境的本地化对照。对于会话的其余部分(或直至同一会话中的下一 SET COLLATION 语句),对 NCHAR 和 NVARCHAR 值的排序将忽略 DB_LOCALE 设置。您可以通过发出 SET NO COLLATION 语句来恢复缺省对照顺序。
该功能使数据库服务器可以对单一数据库的 NCHAR 和 NVARCHAR 数据集使用不同的本地化对照顺序(如果两种对照顺序可对同一字符集进行操作的话)。

执行对照的数据库对象(诸如索引、检查约束和触发器)在创建对象时使用当前生效的对照顺序,而不是在运行时生效的顺序(如果这两个对照顺序不相同的话)。

有关 SET COLLATION 语句的更多信息,请参阅《IBM Informix: SQL 指南:语法》。有关 DB_LOCALE 环境变量的更多信息,请参阅《IBM Informix: GLS 用户指南》。有关 NCHAR 和 NVARCHAR 数据类型的更多信息,请参阅《IBM Informix: SQL 参考指南》。

对大文件使用 LOAD TO 和 UNLOAD FROM

对于 LOAD 和 UNLOAD 文本文件 I/O 操作,LOAD 和 UNLOAD 语句先前在大多数平台上均限制于不大于 2 GB 的文件。
在 V9.4 中,该限制已放松为 4 TB。

有关更多信息,请参阅《IBM Informix: SQL 指南:语法》。

不再需要 SET Residency 语句

在 Dynamic Server 早于 V9.4 的发行版中,SET TABLE 和 SET INDEX 语句可以指定表或索引的一个或多个分段是否保留在共享内存缓冲区中,而不是写在磁盘上。这些语句不再受支持,因为该功能现由数据库服务器自动提供。但是,当应用程序包含 SET Residency 语句时,不发出任何错误;SET TABLE 或 SET INDEX 语句仅会被忽略。

有关更多信息,请参阅《IBM Informix: SQL 指南:语法》。

多个 OUT 参数

在用户定义的例程(UDR)中,OUT 参数通过指针对应于返回的值。Dynamic Server 的较早版本不支持在 UDR 中有多个 OUT 参数,并要求任何 OUT 参数均作为参数列表中的最后一项出现。V9.4 删除了这些限制,支持多个 OUT 参数位于 UDR 参数列表中的任何位置。
该功能在定义 UDR 时提供更大的灵活性,并且不再需要将集合变量返回至曾要求多个返回值的上下文中。JDBC 客户机应用程序可以使用该功能在调用 UDR 的 DML 语句的 WHERE 子句中创建多个语句-局部变量(SVL)。

有关如何使用 UDR 中的 OUT 参数的更多信息,请参阅《IBM Informix: 用户定义的例程与数据类型开发者指南》。有关 OUT 参数语法的更多信息,请参阅《IBM Informix: SQL 指南:语法》。

序列对象

本发行版为序列生成程序引入新的 DML 语句(CREATE SEQUENCE、ALTER SEQUENCE、RENAME SEQUENCE、DROP SEQUENCE)以及多用户可以同时访问的数据库对象以生成 INT8 范围内的唯一整数。

GRANT 和 REVOKE 语句已增强至支持对序列对象的访问特权,而 CREATE SYNONYM 和 DROP SYNONYM 语句现在可以引用本地数据库中序列对象的同义词。
两个新的运算符 CURRVAL 和 NEXTVAL 可以读取或增大现有同义词的值。系统目录包含一个关于序列对象信息的新 syssequences 表。序列是有效的生成主键值的方法。

有关序列对象语法的更多信息,请参阅《IBM Informix: SQL 指南:语法》。

ANSI 连接语法

SELECT 语句的语法已增强至支持用于跨连接、右外部连接和完全外部连接的 ANSI/ISO 语法。关键字 CROSS、RIGHT 和 FULL 现在在连接两个或两个以上表的查询上下文中是受支持的。该功能更符合 SQL 的 ANSI 标准。

有关更多信息,请参阅《IBM Informix: SQL 指南:语法》。

SELECT 语句子查询中的 UNION

在 SELECT 语句子查询中允许使用 UNION 运算符。
UNION 的元素是可递归包含其它 UNION 的 SELECT 语句。

有关更多信息,请参阅《IBM Informix: SQL 指南:语法》。

大于 2048 字节的 LVARCHAR 数据类型

在前发行版中,LVARCHAR 内置 opaque 数据类型具有 2048 字节的上限。V9.4 在 LVARCHAR 列(或 SPL 的 LVARCHAR 变量)声明中支持 size 参数,其中 size 可多达 32,739 字节。

对于向后兼容,不带 size 参数声明的 LVARCHAR 对象最多可存储 2048 字节。该功能增加了 Dynamic Server 长度可变化的数据类型的存储容量。

有关更多信息,请参阅《IBM Informix: SQL 参考指南》。

新的 SQL 保留字

IBM Informix
Dynamic Server V9.4 识别可能影响您的应用程序迁移的新 SQL 关键字。虽然几乎所有的字均可用作 SQL 标识,但在关键字同样有效的上下文中会发生语法歧义。有歧义的语句可能不会产生所期望的结果。

有关这类歧义的变通的信息,请参阅《IBM Informix: SQL 指南:语法》。

以下 SQL 关键字是 Dynamic Server V9.4 中的新关键字:

COLLATIONFULLRESTART
CROSSINSTEADRIGHT

如果您正从 Dynamic Server 早于 V9.30 的发行版进行迁移,请参阅 V9.30 的发行说明,以获取自 V9.21 后已添加至 SQL 关键字列表的字。

有关完整的 SQL 关键字列表,请参阅《IBM Informix: SQL 指南:语法》 V9.4》的附录 A。

新的环境变量

新的 USETABLENAME 环境变量可使 SQL 的 ALTER TABLE 和 DROP TABLE 语句中的同义词使用无效。


有关 USETABLENAME 环境变量的更多信息,请参阅《IBM Informix: SQL 参考指南》

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/312079/viewspace-245554/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/312079/viewspace-245554/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值