T100 find err报错指令大全

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

T100 find err指令大全

 

 

 

 

 

品客

2019/10/19

 

 

 

Usage:用于xshell连接主机屏幕报错查询

后台使用finderr 错误代码

 

 

 

-1   并非拥有者.

 

具有所示意义的操作系统错误码不预期地传回数据库服务器. 检查在目前作业

中档案的所有权和权限以及用到的目录. 查阅可能提供更多信息的其他作业

系统错误讯息.

 

 

-2      没有这样的档案或目录.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能提供

更多信息的其他操作系统错误讯息.

 

 

-3      没有这样的处理程序.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能提供

更多信息的其他操作系统错误讯息. 如果这个错误再出现, 请记下所有详细情

形, 然后联络Informix 技术支持部门.

 

 

-4      中断的系统呼叫.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 这可能源于您

在关键时刻按下了中断键, 或来自某些软件产生的中断讯号, 如 UNIX 的 kill

指令. 查阅可能提供更多信息的其他操作系统错误讯息. 如果这个错误再出

现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-5      I/O 错误.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能提供

更多信息的其他操作系统错误讯息. 特别要尝试判断是什么设备造成此错误,

以及此设备是否持用了数据库或一些其他种类的档案.

 

 

-6      没有这样的设备或地址.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 这可能反映了

在设定数据库软件组态时的一些错误, 或者是报表中 REPORT TO 子句的

错误. 查阅可能提供更多信息的其他操作系统错误讯息.

 

 

-7      自变量列过长.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能提供

更多信息的其他操作系统错误讯息. 如果这个错误再出现, 请参考

Informix-Online Administrator's Guide 附录 B,"Trapping Errors" 以取得额外

的诊断信息. 以相关诊断信息联络 Informix 技术支持部门.

 

 

-8      执行档格式错误.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能提供

更多信息的其他操作系统错误讯息. 如果这个错误再出现, 请记下所有详细

情形, 然后联络 Informix 技术支持部门.

 

 

-9      不良的档案号码.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能

提供更多信息的其他操作系统错误讯息. 如果这个错误再出现, 请记下

所有详细情形, 然后联络Informix 技术支持部门.

 

 

-10     没有子处理程序.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能

提供更多信息的其他操作系统错误讯息. 如果这个错误再出现, 请记下

所有详细情形, 然后联络Informix 技术支持部门.

 

 

-11     没有更多的处理程序.

 

您的应用程序无法启始一个数据库服务器处理程序, 或无法建立如一个

REPORT TO 管道或 network-access 程序等从属函数所需的处理程序.

这个错误可能反映了操作系统上的组态限制. 查阅可能提供更多信息的

其他操作系统错误讯息.

 

 

-12     没有足够的核心.

 

具有所示意义的操作系统错误码不预期地传回数据库服务器. 核心可能是指

操作系统函数所需内存内的数据空间. 查阅可能提供更多信息的其他作业

系统错误讯息.

 

 

-13     权限遭拒.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 这个错误码

通常是随着一个企图去执行一个并非程序或 shell 脚本的档案而发生; 它

反映了报表中 REPORT TO 规格的错误. 查阅可能提供更多信息的其他作业

系统错误讯息.

 

 

-14     不良的地址.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能

提供更多信息的其他操作系统错误讯息. 如果这个错误再出现, 请记下所有

详细情形, 然后联络Informix 技术支持部门.

 

 

-15     需要区块式装置.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 数据库软

体组态中可能有一个错误. 这个错误可能包括 chunk-device 或tape-device

参数指定不正确的地址给 OnLine. 查阅可能提供更多信息的其他操作系统

错误讯息.

 

 

-16     上挂式装置正忙碌.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能

提供更多信息的其他操作系统错误讯息. 如果这个错误再出现, 请记下所

有详细情形, 然后联络Informix 技术支持部门.

 

 

-17     档案已存在.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 这个错误

可能反映企图在 REPORT TO 规格中取代已存在的档案. 查阅可能提供更

多信息的其他操作系统错误讯息.

 

 

-18     Cross-device 连接.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个

错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-19     没有此装置.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 这个错误

可能包括 chunk-device 或 tape-device 参数指定不正确的地址给 OnLine.

或者反映了报表中 REPORT TO 规格可能产生的一个错误. 查阅可能提供

更多信息的其他操作系统错误讯息.

 

 

-20     并非目录.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能

提供更多信息的其他操作系统错误讯息. 有些数据库服务器将数据库储

存成名为 database.dbs 的目录. 如果您将一个具有 .dbs 字尾的档案

(并非目录) 放在您的 DBPATH, 就可能导致这个错误.

 

 

-21     是一个目录.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 一个档案

类型的作业被引导至一个目录. 某些数据库服务器将表格, 索引, 以及锁

定文件储存成为数据库目录中具有特殊字尾的档案. 如果一个目录取代这

样的档案, 便可能导致此种错误. 查阅可能提供更多信息的其他作业系

统错误讯息.

 

 

-22     不正确的自变量.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能

提供更多信息的其他操作系统错误讯息. 如果这个错误再出现,  请参考

Informix-Online Administrator's Guide 附录 B,"Trapping Errors". 以取

得额外的诊断信息. 以相关诊断信息请联络 Informix 技术支持部门.

 

 

-23     档案表格满溢.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 这可能反

映了在数据库软件组态的错误. 查阅可能提供更多信息的其他操作系统

错误讯息.

 

 

-24     开启档案过多.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 这可能反

映了在数据库软件组态的错误. 查阅可能提供更多信息的其他操作系统

错误讯息.

 

 

-25     并非打字机.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 这个错误

可能包括 log-derice 参数指定不正确的住址给 OnLine. 查阅可能提供更多

信息的其他操作系统错误讯息. 如果这个错误再出现, 请记下所有详细情形,

然后联络 Informix 技术支持部门.

 

 

-26     本文档案忙碌.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果目前

的作业需要使用本文档案(例如, 用于报表中 LOAD 或 PRINT FILE 叙述

的输入档), 则稍后再尝试. 查阅可能提供更多信息的其他操作系统错误

讯息.

 

 

-27     档案太大.

 

具有所示意义的操作系统错误码不预期地传回数据库服务器. 查阅您的作

业系统说明文件, 找出在目前作业的环境中, "太大" 的意义.

 

 

-28     装置上已无空间.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器.可能是一个

数据库表格或是一个 ASCII 输出档案已经占满可用磁盘空间. 查阅可能提供

更多信息的其他操作系统错误讯息.

 

 

-29     不合法的搜寻.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能

提供更多信息的其他操作系统错误讯息, 例如, 发生错误的装置. 如果这个

错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-30     只读文件系统.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 整个档案

系统 (磁盘或磁盘分区) 已设为只读. 联络系统管理员以找出原因.

 

 

-31     连接过多.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能

提供更多信息的其他操作系统错误讯息, 尤其是与那些档案有关. 如果这个

错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-32     损坏的管道.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 所谓管道是

指两个处理程序之间的数据路径, 在其他处理程序等待数据的期间, 如果处理

程序之一已经不预期地结束 ,则管道已经毁坏. 查阅可能提供更多信息的其他

操作系统错误讯息, 尤其是与那些处理程序有关. 如果这个错误再出现,请记

下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-33     自变量过大.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-34     结果过大.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-35     作业将阻断.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-36     作业现在进行中.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-37     作业已经在进行中.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-38     Socket 的作业发生在 non-socket 的环境.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能提供

更多信息的其他操作系统错误讯息, 尤其是发生问题的作业和有关的处理程序.

如果这个错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-39     需要目的地址.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-40     讯息过长.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-41     用于 socket 的协议类型错误.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-42     协议未支持的选项.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-43     不支持此协议

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-44     未支持的 Socket 类型.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-45     Socket 未支持此作业.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-46     未支持协议家族.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-47     协议家族未支持地址家族.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-48     地址已在使用中.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-49     无法指定需要的地址.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-50     网络已经关机.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果您正试图

使用 INFORMIX-STAR 或 INFORMIX-NET, 联络系统管理员以知道何时网络将

要备份. 如果并非如此, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-51     无法连接到网络.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果您正试图

使用 INFORMIX-STAR 或 INFORMIX-NET, 联络系统管理员以找出网络发生什

么问题. 如果并非如此, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-52     网络在重设时移除连接.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果您正试图

使用 INFORMIX-STAR 或 INFORMIX-NET, 联络系统管理员以报告网络

发生的问题. 如果并非如此, 请记下所有详细情形, 然后联络

 Informix 技术支持部门.

 

 

-53     软件导致链接中止.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果您正试图

使用 INFORMIX-STAR 或 INFORMIX-NET, 联络系统管理员以报告网络

发生的问题. 如果并非如此, 请记下所有详细情形, 然后联络 Informix

技术支持部门.

 

 

-54     链接被对等作业重设.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果您正试图

使用 INFORMIX-STAR 或 INFORMIX-NET, 联络系统管理员以报告网络

发生的问题. 如果并非如此, 请记下所有详细情形, 然后联络 Informix

技术支持部门.

 

 

-55     没有可用的缓冲区空间.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能提供

更多信息的其他操作系统错误讯息.

 

 

-56     Socket 已经连接.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-57     Socket 未连接.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-58     在 socket 关机之后无法传送.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-59     参照过多: 无法接合.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-60     Connection 暂停.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果您正试图

使用 INFORMIX-STAR 或 INFORMIX-NET, 联络系统管理员以报告网络发生

的问题. 如果并非如此, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-61     连结遭拒.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果您正试图

使用 INFORMIX-STAR 或 INFORMIX-NET, 联络系统管理员以报告网络发生

的问题. 如果并非如此, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-62     Symbolic 链接层次太多.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 数据库服务器

并没有正常地使用 symbolic 连结. 查阅可能提供更多信息的其他操作系统错

误讯息, 尤其是存取过那些档案.

 

 

-63     文件名过长.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 在报表的

REPORT TO 叙述的程序代码内可能有一个错误. 如果并非如此, 请记下所有

详细情形, 然后联络 Informix 技术支持部门.

 

 

-64     主机已关.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果您正试图

使用 INFORMIX-STAR 或 -INFORMIX-NET, 联络系统管理员以报告网络发生

的问题. 如果并非如此, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-65     主机无法连到.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果您正试图

使用 INFORMIX-STAR 或 -INFORMIX-NET, 联络系统管理员以报告网络发生

的问题. 如果并非如此, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-66     目录并非空的.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可能提

供更多信息的其他操作系统错误讯息, 尤其是那个目录正要删除. 如果这个

错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-67     太多处理程序.

 

您的应用程序无法启始一个数据库服务器处理程序, 或无法建立如一个

REPORT TO 管道或 network-access 程序等从属函数所需的处理程序.

这个错误可能反映了操作系统上的组态限制. 查阅可能提供更多信息的

其他操作系统错误讯息.

 

 

-68     太多使用者.

 

具有所示意义的操作系统错误码不预期地传回数据库服务器. 这个错误可

能反映您的操作系统之组态限制. 查阅可能提供更多信息的其他作业系

统错误讯息.

 

 

-69     超过磁盘配额.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 您的作业

系统之组态可能限制了磁盘配额. 查阅可能提供更多信息的其他操作系统

错误讯息, 尤其是有关于磁盘. 联络系统管理员, 要求更充裕的磁盘配额.

 

 

-70     变坏的 NFS 档案控制.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 在网络档案

系统上的文件服务器中有一个错误. 虽然 Informix 数据库服务器并未支持

NFS-mounted 文件系统的数据库存取, 当数据库服务器的可执行文件案或与

数据库服务器有关的其他档案, 放置于 NFS-mounted 磁盘 (换句话说,

INFORMIXDIR 环境变量指名了一个 NFS-mounted 磁盘) 之时, 这个错误便

发生. 此错误通常是短暂的, 反映了文件服务器崩溃以及后续的重新启始.

重新加挂文件系统至您的工作站然后重新执行应用程序.

 

 

-71     路径有过多远程阶层.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个错

误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-72     并非数据流装置.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 查阅可

能提供更多信息的其他操作系统错误讯息, 尤其是有关装置的. 如果

这个错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-73     定时器逾时.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这

个错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-74     数据流资源用尽.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这

个错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-75     没有期望的讯息类型.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这

个错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-76     并非数据讯息.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这

个错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-77     移除标识符.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个

错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-78     已侦测到/已避免掉 死结状况.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. 如果这个

错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

在 AIX, 这个码意谓连接超时.

 

 

-79     没有可用的记录锁定.

 

具有所示意义的操作系统错误码不预期地传回给数据库服务器. Informix 资料

库服务器的内部设计可能使用到核心锁定, 也就是利用操作系统设备来锁定

表格的列. 操作系统锁定表格的空间已经超越极限. 联络系统管理员并

查询如何设定组态, 以便使操作系统能支持更多锁定. 并请检查您的数据库

应用程序, 以查看它是否能藉由每次交易时更新较少的列, 或藉由锁定整个

表格以取代列, 而使用少一点的锁定.

 

 

-101    ISAM 错误: 档案未开启.

 

要求 ISAM 处理器使用一个未开启的档案(表格). 对 C-ISAM 程序来

说, 在使用呼叫 isopen 来尝试使用尚未开启的档案,  或尝试写入一个

以开启为只读模式的档案. 如果这个错误再出现, 请参考 INFORMIX-

OnLine Dynamic Server Administrator's Guide 附录 B "Trapping

Errors", 取得额外的诊断资料.  然后用这项数据联络 Informix 技术

支持部门.

 

 

-102    ISAM 错误: 传至 ISAM 函数的自变量不正确.

 

C-ISAM 函数的一个参数在可接受值的范围之外. 对 C-ISAM 程序来

说, 请重新检视用于此函数呼叫的参数, 将它们与用于函数的说明文件

做比较. 如果这个错误再出现, 请参考 INFORMIX-OnLine Dynamic

Server Administrator's Guide 附录 B "Trapping Errors", 取得额外的

诊断资料. 然后用这项数据联络 Informix 技术支持部门.

 

 

-103    ISAM 错误: 不正确的键叙述指标(太多部份或太长).

 

ISAM 处理器指定了一个不正确的键叙述指标. 对 C-ISAM 程序来说,

请重新检视键叙述指标. 每个键叙述指标最大有 8 部份与 120 字符. 如

果这个错误再出现, 请参考 INFORMIX-OnLine Dynamic Server

Administrator's Guide 附录 B "Trapping Errors", 取得额外的诊断资料.

然后用这项数据联络 Informix 技术支持部门.

 

 

-104    ISAM 错误: 开启太多档案.

 

ISAM 处理器已经到达它开启档案的限制. 对 C-ISAM 程序,  重新检视

程序逻辑并更改,让同时开启的档案少一点. 使用 isclose 以关闭不需要

的档案. 对 SQL 产品来, 这个查询太复杂, 同时使用了太多表格. 使用

暂时表格, 一步步地执行查询.

 

 

-105    ISAM 错误: 不良的 ISAM 文件格式.

 

ISAM 档案 (表格或索引) 的内容已经毁损. 对 C-ISAM 来说, 如果使用了

交易登录, 您可以使用 isrecover 程序复原此档案. 否则需重新建立档案

或将它由备份回存. 对 SQL 产品, 请使用 bcheck 或 secheck 公用程序

以取得问题上的更多信息并且尽可能去更正它 (在INFORMIX OnLine 资

料库服务器使用 tbcheck 或在 INFORMIX OnLine Dynamic Sever 使用

oncheck). 如果此公用程序无法复原表格或索引, 则将必须重新建立或回存.

 

 

-106    ISAM 错误: 非排他性存取.

 

要求 ISAM 处理器在没有排他访问权限时加入或移除一个索引. 对

C-ISAM 来说, 在进行这个作业之前, 档案必须以排他存取开启. 重新

检视程序逻辑并确认它在开启档案的同时也将 ISEXCLLOCK 旗标传给

isopen. 对 SQL 产品而言, 当表格上需要排他锁定时, INFORMIX-OnLine

Dynamic Sever 或 INFORMIX-SE 数据库服务器令传回此错误. 例如, 当

第二个使用者尝试去变更一个已经被第一个用户锁定的表格, 这个错误

便会显现.

 

 

-107    ISAM 错误: 记录被锁定.

 

所要求的记录, 或包含它的档案 (表格), 已经被另一个使用者要求锁定.

这通常是一个短暂的状况. 程序可藉由回复目前交易, 等待短暂时间,

然后重新执行此作业而复原. 对交谈式 SQL 而言, 请重新进行此作业.

对 C-ISAM 程序, 则请重新检视程序逻辑并确认它已可处理这个情况,

这在多程序系统中是正常 instance. 您可藉由将 ISEXCLLOCK 旗标传至

isopen 取得对表格进行排他式存取. 对 SQL 程序, 重新检视程序逻辑

并确认它已可处理这个情况, 这在多程序系统中是正常 instance. 处理它

的最简单方式是使用指令 SET LOCK MODE TO WAIT. 对于大量更

新, 可参阅 DATABASE 叙述的 LOCK TABLE 指令以及 EXCLUSIVE

子句.

 

 

-108    ISAM 错误: 键已经存在.

 

要求 ISAM 处理器建立一个已经存在的索引. 对 C-ISAM 程序来说,

请重新检视程序逻辑. 这个存在的索引必须在定义另一个之前删除.

如果这个错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-109    ISAM 错误: 此键是档案的主键.

 

要求 ISAM 处理器删除主键索引.在 C-ISAM 程序中, 主键无法藉由

呼叫 isdelindex 而删除. 如果这个错误再出现, 请记下所有详细情形,

然后联络 Informix 技术支持部门.

 

 

-110    ISAM 错误: 档案的结尾或开头.

 

ISAM 处理器顺向或逆向读取时, 到达档案 (表格) 的开头或结尾. 对

C-ISAM 程序来说, 这是一个正常的档案结束讯号. 使用不同的 isread

读取模式, 以将档案重新定位. 如为 SQL 产品, 请参阅 SQL 错误讯息

或传回码.

 

 

-111    ISAM 错误: 找不到记录.

 

ISAM 处理器无法找到要求的记录. 对 C-ISAM 程序, 依据使用中的读取

模式, 找不到具有要求的索引值或记录编号的记录. 请确认使用中的索引

是正确的. 对 SQL 产品而言, 参阅SQL 错误讯息或传回码. 可能是这次的

查询并没有找到符合的列.

 

 

-112    ISAM 错误: 没有目前的记录.

 

要求 ISAM 处理器传回目前的记录, 但并没有记录建立. 在 C-ISAM

程序下, 重新检视程序逻辑, 在使用 ISCURR 读取模式之前, 程序必须使

用另一种读取模式, 例如 ISFIRST, 以建立一个目前的记录. 如果这个错误

再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-113    ISAM 错误: 档案被锁定.

 

所要求的档案 (表格) 已经被另一用户要求以排他模式开启, 在使用档案

锁定的系统中会有一个 tablename.lok 档案 , 此档案可能是由于另一个

程序不正常结束之后而残缺不全. 如果您可以确定是这种情况, 您可让档案

变空以释放锁定. 锁定档案在许多系统不使用, 而且从未用于 INFORMIX

OnLine Dynamic Sever.

对 C-ISAM 程序, 在档案解除锁定后重新执行程序. 对 SQL 产品, Lock

Table 叙述造成外显式的表格锁定, 而CREATE INDEX 及 ALTER TABLE

则是隐式锁定的方式. 请在表格解除锁定后重新执行程序或查询.

 

 

-114    ISAM 错误: 文件名过长.

 

要求 ISAM 处理器开启或建立一个文件名多于 10 个字符的档案.

对 C-ISAM 程序来说, 这是一个产品限制, 您必须选择一个较短的文件名.

如果这个错误再出现, 请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-115    ISAM 错误: 无法建立锁定档案.

 

要求 ISAM 处理器使用锁定方式存取一个档案或列. 由于这是档案层级锁定

的操作系统, ISAM 必须建立一个 tablename.lok 档案. 当它尝试如此做, 它从

操作系统得到一个错误码, 可能磁盘已满, 可能您的账号在相关目录并没有写

入的权限. 查阅操作系统错误讯息, 可能提供了更多信息.

 

 

-116    ISAM 错误: 无法配置内存.

 

ISAM 处理器需要配置内存用于数据储存, 但无法做到. 可能操作系统有一些

问题, 查阅操作系统错误讯息, 可能提供更多信息. 一个可能的原因是: 选择了

包含大型 BYTE或 TEXT 栏的列至暂时表格中, 或者做为 INSERT 或 UPDATE

的一部份. 在某些版本, 一个完整包括 BLOB 值的列是缓冲于内存. 对

C-ISAM 程序而言: 重新检视程序, 寻找可以使用较少内存的任何方式.

对 SQL 产品而言: 如果可能的话, 简化程序, 画面表格或报表.

 

 

-117    ISAM 错误: 错误的用户自定对照序列.

 

这个讯息不会显示在任何现行的 Informix 产品. 如果这个错误再出现,

请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-118    ISAM 错误: 无法读取登录记录    

 

ISAM 处理器尝试回复交易或复原档案时, 因读取交易登录失败而导致错误.

查阅操作系统错误讯息, 可能提供更多信息. 可使用 dblog 或 selog 公用程序

以取得有关问题的更多信息. 如果档案 (表格) 无法修复, 则将必须重新建立

或从备份回存.

 

 

-119    ISAM 错误: 不良的登录记录.

 

ISAM 处理器尝试回复一笔交易或复原一个档案时, 在交易登录记录中遇到

不良资料. dblog 或 selog 公用程序可用以取得有关问题的更多信息. 如果

档案 (表格) 无法修复, 则将必须重新建立或从备份回存.

 

 

-120    ISAM 错误: 无法开启日志文件.

 

ISAM 处理器尝试开启交易日志文件, 但是从操作系统收到一个错误. 查阅作业

系统错误讯息, 可能提供更多信息. 对 C-ISAM 程序, 重新检视传至 islogopen

的参数. 确认它指定了存在的正确文件名, 可写的日志文件, 而且如果档案不

在目前目录则将文件名加上路径. 对 SQL 产品来说, 交易日志文件已用 START 指

令建立. 确认在 START 指令下达时该日志文件仍然存在于相同的目录位置, 并

且您的账号有权去存取它.

 

 

-121    ISAM 错误: 无法写入登录记录.

 

ISAM 处理器尝试在交易登录加入一笔记录, 但是从操作系统得到一个错误.

可能的原因是磁盘已满. 查阅操作系统错误讯息, 可能提供了更多信息. 交易

日志文件可能成长地相当大. 欲减少它的大小您必须做两件事情. 首先, 制作

一个数据文件 (C-ISAM), 或全部数据库档案 (SQL) 的备份拷贝. 再者, 使交易

日志文件成为一个空档案. 如果例行执行这些步骤, 日志文件的大小即可控制.

 

 

-122    ISAM 错误: 交易不可使用.

 

要求 ISAM 处理器将交易的开始或结束标记, 但交易登录尚未作用. 对

C-ISAM 程序来说, 这个档案尚未用登录开启. 重新检视 isopen 的呼叫并确认

ISTRANS 参数有包含在内. 对 SQL 产品来说, 这个数据库并未支持交易登录.

如果您使用 OnLine 数据库服务器, 请 OnLine 管理员为此数据库启动登录.

不然的话, 使用 START DATABASE 述以开始交易登录. 在全部情况下, 登录

仅应该在数据库的完整备份完成之后立刻启始.

 

 

-123    ISAM 错误: 没有共享内存.

 

这个 ISAM 的内部设计使用了共享内存, 然而, 共享内存分割区未建立.

联络系统管理员或安装此产品的人.

 

 

-124    ISAM 错误: 尚未开始作业.

 

要求 ISAM 处理器将交易的结束标记, 但并没有交易启始. 对 C-ISAM 程

式重新检视程序逻辑, 以确认它在呼叫 iscommit 或 isrollbackake 之前已呼叫了

isbegin.对 SQL 产品确认在 COMMIT WORK 或 ROLLBACK WORK 之前已

执行 BEGIN WORK.

 

 

-125    ISAM 错误: 无法使用 nfs.

 

要求 ISAM 处理器开启一个位在另一台机器之磁盘上的档案, 并使用

Network File System (NFS) 存取, 此动作并没有支持. 数据库档案必须放置

在实际连在 ISAM 处理器执行所在的机器之磁盘上. 欲使用在不同机器上的

数据库, 您必须安装 INFORMIX-STAR 或 INFORMIX-NET 网络软件, 之后这个

机器上的应用程序, 便可以与该磁盘所在的机器, 执行数据库服务器通讯.

 

 

-126    ISAM 错误: 不良的列 id.

 

要求 ISAM 处理器根据实体位置来读取一个列, 但是无法找到一个位于该位

置的列. 对 C-ISAM 程序来说, 如果使用记录编号作存取, 重新检视储存在

isr-ecnum 的号码, 它是不正确的. 不然的话目前的索引可能损坏了, 请执行

bcheck 或 secheck 公用程序. 对 SQL产品来说, 索引已经破坏, 如果是

使用 INFORMIX-SE 数据库服务器, 执行 bcheck 或 secheck 公用程序以检查

并修复它. 如果是使用 INFORMIX OnLine 数据库服务器, 执行 tbcheck, 或如果

使用 INFORMIX-OnLine Dynamic Sever 则用 oncheck.

 

 

-127    ISAM 错误: 没有主键.

 

在一个需要单一主键索引才能使用的函数, 呼叫 ISAM 处理器, 但档案并没有

这样的索引. 对 C-ISAM 程序重新检视数据文件的设计, 它是用 zero-part

主键索引建立的, (也就是说, 是藉由记录编号顺序来读取). 如果不是该情况,

索引可能破坏了, 请执行 bcheck 或 secheck 公用程序程序. 如果这个错误

再出现, 请记下所有详细情形,然后联络 Informix 技术支持部门.

 

 

-128    ISAM 错误: 没有登录.

 

一个需要交易登录的函数呼叫 ISAM 处理器, 但并没有用于此档案的登录存在.

对 C-ISAM 程序重新检视数据文件的建立. 在使用这样的函数作为 isbegin 之

前, 程序必须使用 islogopen 设定一个登录. 对 SQL 产品来说, 这个数据库并

未支持交易登录. 如果您是使用 OnLine 数据库服务器, 请系统管理员启动用于

这个数据库的登录. 不然的话, 使用 START DATABASE 叙述以开始交易登录.

在所有情况下, 登录仅能紧接着在数据库的完整备份完成之后启始.

 

 

-129    ISAM 错误: 使用者过多.

 

这个 ISAM 的内部设计使用共享内存, 而且组态设定中可让最大数量的并行

用户运用的共享内存已经达到极限. 您可能需要在 ONCONFIG 档案的

USERTHREADS 和 TRANSACTIONS 组态参数增加其数值. 如果这个问题再

发生, 询问系统管理员或安装此产品的人.

users 这个字很容易被误解. 此限制是在使用数据库服务器的并行应用程序

之数量. 一个使用者可能在同时间启始多个应用程序. 例如, 当 INFORMIX-4GL

程序设计员的环境被启始, 它用数据库服务器开启了一个会期. 当它的使用者

要求它编译一个 4GL 程序, 则 4GL 编译程序被启始, 而且它也用数据库服务器

开启一个会期, 致使编译期间这个使用者便具有两个执行中的会期.

 

 

-130    ISAM 错误: 没有这样的 dbspace.

 

这个码反映了两个问题之一. 最有可能的问题是这个作业藉由名称, 指定了

一个 dbspace (例如, 在 CREATE TABLE 叙述的 IN 子句或在

DBSPACETEMP 环境变量设定), 而该名称尚未定义. 您可执行 tbstat 或

onstat 公用程序加上 -d 选项, 以检视定义的 dbspace 名称. 询问 OnLine

管理员有关建立新的 dbspace.

如果作业并没有明确指名 dbspace 或这名称是正确的, 问题可能更严重. 这

错误可能反映在 root dbspace 的保留分页毁损. 使用 tbcheck 或 oncheck

公用程序加上 -cr 选项以检查这种状况.

 

 

-131    ISAM 错误: 没有可用磁盘空间.

 

没有足够的连续可用磁盘空间以完成目前的作业. 对 C-ISAM 程序来说, 如果

交易登录不在使用中, 请回复目前的交易. 整理一些可用的磁盘空间然后再度执

行程序. 对 SQL 产品来说, 如果可能的话, 回复目前的交易. 联络系统管理员

要求更多磁盘空间用于数据库.

 

 

-132    ISAM 错误: 列大小过大.

 

单一列的限制是来自 OnLine 支持的磁盘分页大小. 定义不同的表格, 以缩短

每个列. 考虑将表格分开为两个或更多个表格, 或使用更简洁的数据类型.

 

 

-133    ISAM 错误: 稽核追踪存在.

 

要求 ISAM 处理器对档案作业的方式与稽核追踪不能兼容, 目前用于档案

的稽核追踪仍然存在. 对 C-ISAM 程序来说,您无法在稽核追踪存在的期间呼

叫 iscluster. 首先以 AUDSTOP 模式呼叫 isaudit. 对 SQL 产品: 当表格有一个

稽核追踪时, 您不能在其上建立一个丛集索引. 必须先用 DROP AUDIT 叙述

移除稽核追踪.

 

 

-134    ISAM 错误: 已无锁定.

 

ISAM 处理器需要锁定一个列或索引分页但是没有锁定可用. 作业所需的锁定

数目, 主要取决于在一个单笔交易中修改的列数目. 您可以藉由在每个交易

进行少一些, 以减少需要的锁定数目, 或藉由锁定整个表格替代列锁定. 依据您

使用的设计方式, 可用的锁定数目组态定义在以下三个地方之一: 操作系统核心,

共享内存节区, 或在 OnLine. 有关制作更多可用的锁定, 请咨询您的 OnLine

系统管理员.

 

 

-135    ISAM 错误: tblspace 并不存在.

 

这个错误可能指出在 root dbspace 的控制信息毁损, 或一个严重的问题导致

可能需要从备份回存系统. 短期内, 现有的交易应回复以及终止应用程序,

之后在线管理员应该执行 tbcheck 或 oncheck 公用程序.

 

 

-136    ISAM 错误: 没有延伸区块.

 

OnLine 数据库服务器需要对表格加入一个延伸区块, 但是无法做到. 有两个可能

的原因. 一是在 dbspace 已没有足够的磁盘空间; 另一则是表格已经指定允许

的最大延伸区块数量.  OnLine 管理者可以决定以下的因素:

        1. 决定用于表格的 tblspace 数量. 它是用于这个表格的 systables

表格之 partnum 栏的值.

        2. 转换 tblspace 值为十六进制然后取出它最重要的两个数字

(高序位字节). 这就是表格驻留之闲置区块的闲置区块数目.

        3. 使用 tbstat 或 onstat 公用程序 -t 选项, 以找出这个表格的磁盘使用.

特别留意用于 npages (可用的磁盘分页), nused (使用的磁盘分页), 以及 nextns

(延伸区块的数量) 的值.

如果 nused 小于 npages 而 nextns 很大 (超过 200), 则表格的延伸区块扩充

太多. 每个表格的延伸区块上限是在 200 与 500 之间, 随着表格定义与使用中

的磁盘分页数量而不同. 挽救方式是重新配置使用少一点, 大一点的延伸区块

的表格. 卸除表格数据至一个 flat file, 移除该表格, 重新建立表格, 指定一个

大小足够的主要扩充, 以处理目前全部数据, 以及一个是目前大小的四分之一

至六分之一之间的次要延伸区块, 然后重载数据至表格内.

如果 nextns 很小或是 npages 与 nused 的差小于表格次要延伸区块的大小,

则问题即是表格所在的 dbspace 缺乏磁盘空间. 使用在步骤 2 所决定的闲置

区块数量以及 DB-Monitor 或 ON-Monitor Chunks 的显示以决定 dbspace,

然后加入新的闲置区块至该 dbspace.

 

 

-137    ISAM 错误: 闲置区块表格满溢.

 

这个错误会由 OnLine 管理员看到. OnLine 数据库服务器组态为只能处理

特定数量的磁盘闲置区块. 已经达到这个限制, 所以闲置区块无法再加入. 增

加 TBCONFIG 或ONCONFIG 档案的 CHUNKS 参数, 然后初始化共享内存.

 

 

-138    ISAM 错误: dbspace 表格满溢.

 

这个错误会由 OnLine 管理员看到.  OnLine 数据库服务器组态为只能处理

特定数量的 dbspaces. 已经达到这个限制, 所以 dbspace 无法再加入. 增加

TBCONFIG 或 ONCONFIG 档案的 DBSPACES 参数, 然后初始化共享内存.

 

 

-139    ISAM 错误: 日志文件表格满溢.

 

这个错误会由 OnLine 管理员看到.  OnLine 数据库服务器组态为只能处理

特定数量的逻辑登录. 已经达到这个限制, 所以登录无法再加入. 增加

TBCONFIG 或 ONCONFIG 档案的 LOGSMAX 参数, 然后初始化共享内存.

 

 

-140    ISAM 错误: 广域区段不允许存取.

 

这个错误仅会发生在 VMS 操作系统. 在初始化共享内存的期间发生了一个

内部错误. 如果这个错误再出现, 请记下所有详细情形, 然后联络 Informix 技术

支持部门.

 

 

-141    ISAM 错误: tblspace 表格满溢.

 

OnLine 数据库服务器组态为只能处理特定数量的开启 tblspaces (方式相当

接近表格). 已经达到这个限制, 所以在这个叙述用到的表格不能开启. 在短

期内, 目前的交易应该回复, 然后在并行作业减少时再重新执行. 欲避免再发

生, OnLine 管理员应设定系统配置以处理更多开启 tblspaces. TBCONFIG 或

ONCONFIG 档案的 TBLSPACES 参数设定了此限制. 在 DB-Monitor 或

ON-Monitor 配置文件的 ovrtable 计数显示反映了这个错误发生的次数.

 

 

-142    ISAM 错误: tblspace 分页满溢.

 

这是一个内部错误 (可能作废了). 如果这个错误再出现, 请记下所有详细情形,

然后联络 Informix 技术支持部门.

 

 

-143    ISAM 错误: 侦测到死结.

 

OnLine 数据库服务器在您与其他并行的使用者的要求之间, 侦测到一个可能就

要发生的死结. 每个使用者要求都在等待一个在串行中受控于他人的资源(一列

或磁盘分页), 如果您的要求作业进行下去, 该串行会关闭而全部成为死结.

短期内, 这个错误的应付方式与 -107 相同 (记录被锁定). 回复目前的交易, 然

后延迟一些时间后再执行. 欲防止再发生, 请重新检视使用相同表格且同时执行

的应用程序设计, 有各种设计策略可让死结发生的可能降到最低.

当 INFORMIX-STAR 在作业中, 而且您的应用程序正在使用这个系统和另一

个系统的表格, 依据在另一个系统等待资源的延迟持续时间, 死结侦测就不再

是确定的, 而是随机的. OnLine 管理员可以在假设死结之后设定延迟时间长度.

 

 

-144    ISAM 错误: 键值被锁定.

 

目前插入一列之作业有一个特定的主键值, 或是以特定的主键值更新一列, 但

是该键值已经被来自一个尚未确认的交易从索引中删除. 这个错误只有当锁

定模式设定至 NOT WAIT 时才会被检视到. 应付它的方式如同错误讯息

 -107 (记录被锁定). 回复目前的交易, 然后延迟一些时间后再执行, 之后, 如果

其它交易确认, 锁定将不再存在. 如果它回复了, 键值将存在而且这个作业

将收到一个键值重复的错误.

 

 

-145    ISAM 错误: 系统并没有磁盘镜射.

 

这个错误会由 OnLine 管理员看到. OnLine 系统尚未初始化以支持磁盘镜射.

在您可以加入镜射闲置区块之前, 您必须重新初始化 Initial Disk 参数, 在标示

Mirror 的字段显示 Y, 如此便可加入磁盘镜射支持.

 

 

-146    ISAM 错误: 这个磁盘的其它拷贝目前不能用或不存在.

 

这个错误会由 OnLine 管理员看到. 在您可以把这个闲置区块脱机之前,  您必须

把这个镜射对的另一个闲置区块带至上线状态.

 

 

-147    ISAM 错误: 备份在进行中.

 

这个错误会由 OnLine 管理员看到. 您要求的动作在备份制作的期间无法完成.

例如, 您不能在备份期间加入一个登录或镜射. 取消备份动作, 或等待直到它

完成, 然后重新下达指令.

 

 

-148    ISAM 错误: dbspace 并非空的.

 

这个错误会由 OnLine 管理员看到. 您不能移除 dbspace,  直到它内部全部表格

移除为止. 欲找出剩余表格的名称, 可以使用 tbcheck 或 oncheck 公用程序

-pe 选项, 它的报表会依闲置区块列出在 dbspaces 内的表格列表.

 

 

-149    ISAM 错误: INFORMIX OnLine daemon 已不再执行.

 

您的应用程序仍在与 OnLine 数据库服务器通讯中, 但是该服务器已不再执行.

您的目前交易在 OnLine 系统下次启动进行, 快速复原时将会回复. 终止应用

程序然后联络系统管理员以找出发生什么状况, 以及数据库服务器何时将再

启动.

 

 

-150    已经超过 INFORMIX 演示版的限制.

 

您使用的是数据库服务器的演示版. 这个版本所能管理的表格数量以及表格

的大小有限制. 目前的作业导致它超过那些限制之一. 请联络您的 Informix

代表, 了解有关购买软件产品版本的事项.

 

 

-151    ISAM 错误: 在 varchar 长度字段有不合法的数.

 

这是内部错误, 发生于磁盘中的一个 varchar 栏之前导字节指出有个

varchar, 长度大于在字段建立时所定义的长度. 如果这个错误再度出现, 请参

考 INFORMIX-OnLine Dynamic Server Administrator's Guide 附录 B

"Trapping Error", 取得额外的诊断资料. 然后用这项数据联络 Informix 技术

支持部门.

 

 

-152    ISAM 错误: 由远程处理程序收到不合法的讯息.

 

这是一个不应该发生的内部错误. 请记下使用的网络软件的细节, 以及在这个

与其它主机系统数据库服务器的版本阶层. 如果这个错误再出现, 请记下所有

详细情形, 然后联络 Informix 技术支持部门.

 

 

-153    ISAM 错误: 并不在 ISMANULOCK 模式.

 

要求 ISAM 处理器对目前的档案 (表格) 锁定或解除锁定, 但是档案并没有以

适当的模式开启. C-ISAM 程序: 再检视 isopen 的使用并确认, 当开启一个

人工锁定表格时 ISMANULOCK 旗标已传出. 如果这个错误再出现, 请记下所

有详细情形, 然后联络 Informix 技术支持部门.

 

 

-154    ISAM 错误: 锁定暂停逾时.

 

这个网络作业已经暂停, 在最大容许期间等待着来自另一数据库服务器的回

应. 而 INFORMIX-OnLine Dynamic Sever 则假设有一个分布式的死锁, 在其中

这个用户要求正等待着不同系统上用户锁定的资源, 而对方也正在等待这

个使用者所拥有的资源. 回复目前的交易然后延迟一段时间之后再试. 如果这

个错误经常发生, 请要求 OnLine 管理员调整死结暂停间隔的长度.

等待期限逾时, 这个码也会传回. 也就是说, 如果您有 SET LOCK MODE TO

WAIT 3, 而您的要求在队列中等待锁定超过 3 秒, 此作业将以这个 ISAM

错误码而结束.

 

 

-155    ISAM 错误: 主要及镜射闲置区块不良.

 

主要的闲置区块 (以及镜射闲置区块, 如果存在的话), 已无法使用. 回复目前的

交易并终止应用程序. 联络 OnLine 管理员, 必须定义新的磁盘闲置区块, 而后

系统必须从磁带回存.

 

 

-158    ISAM 错误: SMI 虚拟表格上不允许的作业

 

您企图使用系统不支持的 System Monitor Interface ( SMI ) 虚拟表格. 请尝试

另一种作业.

 

 

-160    ISAM 错误: 在任何时间只能开启一个 blob.

 

这是一个不应该发生的内部错误. 数据库服务器在一列中呼叫了 blob manager

isbopen 函数两次. 如果这个错误再出现, 请记下所有详细情形, 然后联络

Informix 技术支持部门.

 

 

-161    ISAM 错误: 并没有开启任何 blob.

 

这是一个不应该发生的内部错误. 数据库服务器呼叫了 blob manager 函数而

没有事先呼叫 isbopen. 如果这个错误再出现, 请记下所有详细情形, 然后联络

Informix技术支持部门.

 

 

-162    ISAM 错误: BlobSpace 不存在.

 

这个错误最有可能的原因是, 目前的叙述企图使用子句 IN blobspace

去定义一个 BYTE 或 TEXT 栏, 但是却没有定义该名称的 blobspace. 然而,

如果 blobspace 的拼法正确而且应该存在, 问题则可能是因为 root dbspace

的保留分页已经损坏了. 在那种情况下,  OnLine 管理员应该以 -cr 选项执行

tbcheck 或 oncheck 公用程序以检查该状况. 如果叙述并未参考到 blob 字段,

可能是 root dbspace 已满或遭损坏; 请联络 OnLine 管理者以取得更进一步的

帮助.

 

 

-163    ISAM 错误: 开始与结束分页戳记不同.

 

OnLine 数据库服务器报告数据库的损坏证据, 每个磁盘分页在每端都有时

间戳记, 当分页从磁盘读取时, 时间戳应该相同. 这个数据完整性的测试

已经故障, 指出可能是磁盘分页并没有完全写到磁盘, 或是在磁盘或记忆

体中的磁盘分页已经遭到部份覆写. 在任一情况, 目前的交易应该回复并且

终止应用程序. 然后通知 OnLine 管理员应该执行 tbcheck 或 oncheck 公用

程序以取得更多有关故障的信息.

 

 

-164    ISAM 错误: Blob 戳记不正确.

 

这个作业传回了一个不正确的 BYTE 或 TEXT 值. 可能数据分页已经毁损.

回复目前的交易. 请 OnLine 管理员执行 tbcheck 或 oncheck 的 -D 选项,

以取得有关问题的更多信息.

如果此问题发生于 Dirty Read 或 Committed Read 隔离, 这个码可能指出此

BYTE 或 TEXT 值已经被另一个处理程序或处理线串所删除, 而且它的分页已

经部份配置到无关的值. 一个使用 Dirty Read 隔离的程序可以读取已经

删除但尚未确认的列. 如果在程序读取 BYTE 或 TEXT 值的期间, 删除已

确认, 而且如果配置至此值的空间又再用于其它程序, 就可能传回这个

错误码.

当使用 Committed Read 隔离, 程序将无法看到标记要删除的列. 然而,

不会有锁定放在一个没有更新读取的列. 在列取得以后, BYTE 或 TEXT

数据会在下一个步骤内读取. 在这漫长的步骤期间, 另一个程序可能会删

除了列, 确认了删除, 而使 blobspace 可以再使用. 欲判断这种情况是

否发生, 程序应该停止处理 BYTE 或TEXT 值然后重新读取该列. 如果列中的

non-blob 值不能再读取, 即代表列已删除. 如果该列仍然可以读取, 则

blobspace 已经损坏了.

 

 

-165    ISAM 错误: Blob 字段并不存在.

 

这个内部错误不应该发生. 数据库服务器呼叫了 blob manager isbcreate

函数, 而用于一个未定义为 BYTE 或 TEXT 的表格栏. 如果这个错误重现,

请记下所有详细情形, 然后联络 Informix 技术支持部门.

 

 

-166    ISAM 错误: BlobSpace 已满.

 

这个作业企图加入或更新 BYTE 或 TEXT 栏的值, 但储存栏的 blobspace

已经没有足够的空间. 目前的交易应该回复而且应用程序应终止. 然后要求

OnLine 管理员加上磁盘空间的闲置区块于此 blobspace.

当 BYTE 和 TEXT 值删除或取代时, 它们在 blobspace 所占用的分页并

不能再度使用, 直到交易所在的逻辑登录释放为止. 如果登录已备份到磁带

而且在登录中的全部交易已经关闭, 逻辑登录才能释放.

 

 

-167    ISAM 错误: BlobPage 大小并非 PAGESIZE 的整数倍.

 

这个错误会由 OnLine 管理员看到. 当定义一个 blobspace 时, 您必须指定

一个为系统分页大小整数倍的分页. 系统分页大小是当 OnLine 做首次初始化

时, 在参数屏幕所设定.

 

 

-168    ISAM 错误: 备存阻断了 BlobPage 配置.

 

一个在线备存制作时, 在 blobspace 的磁盘分页配置会冻结. 因此确认备存开始

时含有数据的 blobpage 在写入备存磁带前不会被新的 blobpage 释放或覆写.

一旦在 blobspace 闲置区块所用到的 blobpages 备存之后, 在该闲置区块

的 blobpage 配置便可以重新开始. 在备存制作的期间, 正常的列数据可以继续

改变, 因为更动过的 dbspace 分页可以在任何时间点写入或再写入于磁带上.

 

 

-169    ISAM 错误: TEXT或BYTE数据的分页不能从闲置区块配置, 除非闲置区

块空间的增加已经登录.

 

当含有TEXT或BYTE 数据的储存空间因增加新的闲置区块而延伸时, 除非登

录记录显示闲置区块的增加已加以登录, 否则不能配置分页. 若这个规则不能强制执

行, 在复原期间会发生某些异常状况. 不用等到登录的完成; 即可以用 -1 选项

执行 tbmode 或 onmode 工具来强制切换到下一个登录.

 

 

-171    ISAM 错误: 侦测到 ISAM 文件格式改变.

 

使用了特殊的锁定方法, 或索引节点大小的一个程序, 企图去存取一个使用

不同的锁定方法, 或索引节点大小建立的 ISAM 档案.

如果您是从一个使用另一种索引节点大小的平台移转档案, 您必须执行 bcheck

或 secheck 公用程序, 加上 -s 选项以针对全部的 ISAM 档案 (.dat 与 .idx), 来

重新调整索引节点大小.

对于 INFORMIX-SE, 如果您是在使用不同锁定方法的平台之间移转应用程序,

在您存取它们时, 您必须设定环境变量 RESETLOCK, 以转换 ISAM 档案. 如

果时间允许的话, 您可以藉由在该数据库中执行 UPDATE STATISTICS, 而存

取到该数据库所有的档案.

对于 C-ISAM 应用程序, 如果您是在使用不同锁定方法的平台之间移转应用程

式, 在您存取它们时, 您必须设定环境变量 RESETLOCK, 以转换 C-ISAM 档案.

 

 

-172    ISAM 错误: 非预期的内部错误.

 

您遭遇到非预期的内部事件. 查询 online.log 以了解诊断是否保存关于此事件

的任何其他信息. 如果这个错误重复发生, 请参考 Administrator's Guide 以取

得额外的诊断数据。 然后用这些诊断信息联络 Informix 技术支持部门

 

 

-173    ISAM 错误: 在逻辑登录备份期间发生了一个错误.

 

这个一般性的讯息, 指出某些原因已经导致逻辑登录备份故障. 而 SQL API 也

包含了附属于此错误的有用本文.

 

 

-174    ISAM 错误: 在备存备份期间发生了一个错误.

 

这个一般性的讯息, 指出某些原因已经导致备存备份故障. 而 SQL API 也包含

了关于此错误的有用本文.

 

 

-175    ISAM 错误: 在实体回存期间发生了一个错误.

 

这个一般性的讯息, 指出某些原因已经导致实体回存故障. 而 SQL API 也包含

了关于此错误的有用本文.

 

 

-176    ISAM 错误: 在逻辑回存期间发生了一个错误.

 

这是个一般性的错误, 指出某些原因已经导致逻辑回存故障. 而 SQL API 也包

含了关于这个错误的有用本文.

 

 

-178    ISAM 错误: 数据库被锁定; 在登录模式上有未决的变更.

 

已要求产生变更数据库登录状态. 除非针对数据库使用的储存空间, 执行了层级

0 备份, 否则无法存取数据库.

 

 

-181    ISAM 错误: 并未连上光驱子系统

 

光驱子系统无法作用. 这通常意谓着您要求一个光盘作业, 但是 INFORMIX

OnLine Dynamic Sever 并没有具备 INFORMIX OnLine/Optical 组态.

 

 

-182    ISAM 错误: 重复的光驱 BLOBSpace 名称.

 

TEXT 或BYTE 数据的储存空间已以光驱家族名称相同的名称加以定义.

 

 

-190    ISAM 错误: 交易表格满溢

 

这个错误指出, 在交易表格中已经没有可用的 socket. 欲查看此表格, 可以

用 -x 选项执行 onstat.

 

 

-191    ISAM 错误: 没有这样的闲置区块

 

指定移除的闲置区块并不存在时, 这个错误传回.

 

 

-192    ISAM 错误: 不能移除第一个闲置区块.

 

储存空间的第一个闲置区块一定不能加以移除. 选择另一个闲置区块.

 

 

-193    ISAM 错误: 闲置区块忙碌.

 

逻辑复原无法往前增加闲置区块, 因为闲置区块已经存在. 当闲置区块从储存空

间移除, 或空间已被移除时, 会发生此错误. 此闲置区块会在先不执行层级0备

份的情况下, 针对另一个储存空间而重新使用.

 

 

-194    ISAM 错误: 闲置区块并非空的

 

这个错误指出闲置区块并非空的, 而且因此无法移除.

 

 

-199    Smart Disk 错误

 

使用 Smart Disk 系统时发生了一个错误. 参阅伴随的讯息以取得更多信息.

 

 

-200    标识符太长.

 

在 SQL 叙述中的标识符必须是 18 个字符或小于这个长度. 详细检视叙述

以确认其中并没有太长的标识符, 而且并没有标点上的错误, 而可能使两个

名称看起来像是只有一个.

 

 

-201    发生语法错误.

 

此一般的错误讯息表示以 SQL 叙述形式产生的错误. 找出短少或多出的标点

符号 (例如短少或多出的逗号、遗漏子查询两边的括号等等)、拼错关键词 (如

VALUES 拼成 VALEUS )、使用关键词不当 (如INSERT 叙述中的SET 或子

查询中的 INTO), 关键词的顺序紊乱 (如以 "value IS NOT" 代替 "NOT value

IS" 的情况), 或保留字当做标识符使用.

 

提供完整符合 NIST 标准的数据库服务器并不保留任何字; 用这些数据库伺服

器来查询时, 可能会失败, 而用较早版本的 Informix 数据库服务器来查询时,

则传回错误 -201.

 

这个错误的原因可能是尝试在索引上的CREATE INDEX 或ALTER

FRAGMENT INIT, 使用 round-robin语法. 无法使用 round-robin 索引.

 

 

-202    在叙述中发现一个不合法的字符.

 

这个叙述嵌入了一个无法解译为 SQL 叙述的一部份之字符. 如果此叙述是

由程序构成, 该字符大概是一个不可印出的控制字符. 请确认叙述仅包含可印

的 ASCII 字符然后再执行它.

 

 

-203    在叙述中发现一个不合法的整数.

 

预期是整数的位置存在着一个无法接受的数值常数. 详细检查叙述以找出应该

是整数但是却包含了小数点或 e 字母的数字, 或是其值大于 2,147,483,647

((2 to 31st power) - 1).

 

 

-204    在叙述中发现一个不合法的浮点数字.

 

无法接受一个标示相似于浮点数 (具有小数点 和/或 一个以 e 开头的指数) 的

数值常数. 可能是指数大于可处理的范围.

 

 

-205    不能将 ROWID 用在具有累积, 群组化或多重表格的概观文件.

 

关键词 ROWID 表示仅存在于简单表格的虚拟字段. 这个叙述参考到表格的

ROWID, 它实际是一个以伴随累积函数, 群组化的选择, 或是两个或以上

表格的链接为基础的概观档. 这样的查询产品不需有 ROWID 字段, 因而虽

然这个概观文件甚至显示为一个表格, 但也不需具有 ROWID. 若要再查询中

使用 ROWID, 您必须将查询应用在以概观文件为基础的表格.

 

 

-206    指定的表格 '表格-名称' 不在数据库中.

 

详细检视叙述中的表格名称, 如果并没有拼法错误, 请检查目前使用的数据

库是否是您所要的. 如果一切无误, 数据库可能已经更改过了. 或许是表

格改名或移除了.您可以藉由查询 systables 表格以找到数据库中所有的

表格名称.

 

 

-207    不能更新已经在一个以上表格中宣告的光标

 

在此叙述中所使用的光标已宣告 FOR UPDATE, 但有一个 SELECT 叙述

连接二个或以上的表格.  这是不支援的; 数据库不知道如何分配新值到

多个表格中.  若 SELECT 叙述是以此游标宣告, 它本身或是 FOR UPDATE

的子句就必须修改. 若 SELECT 叙述是经由程序建立的, 且动态地与光标

相关, 则程序应知会用户不得在此应用程序中使用多个表格 SELECT 叙述. 

(此讯息只在 4.0 版或更早期的版本中出现.)

 

 

 

-207    不能更新已经在一个以上表格中宣告的光标

 

在此叙述中所使用的光标已宣告 FOR UPDATE, 但有一个 SELECT 叙述

连接二个或以上的表格.  这是不支援的; 数据库不知道如何分配新值到

多个表格中.  若 SELECT 叙述是以此游标宣告, 它本身或是 FOR UPDATE

的子句就必须修改. 若 SELECT 叙述是经由程序建立的, 且动态地与光标

相关, 则程序应知会用户不得在此应用程序中使用多个表格 SELECT 叙述. 

(此讯息只在 4.0 版或更早期的版本中出现.)

 

 

 

-208    在查询处理期间内存配置失败.

 

数据库服务器需要配置数据空间内存以进行查询, 但已经没有可用空间.

可能是硬件的限制, 或操作系统组态限制, 或是空间暂时短缺.

请延迟一段时间后再查询一次. 如果仍然失败, 请向系统管理员咨询. 如果

可能, 修改查询以链接较少的表格, 或较少的字段群组或较少的字段排列,

或者以两次或多次的叙述作业. 在 DOS 系统时, 离开到操作系统指令列,

释放一些磁盘空间或减少程序的复杂度, 然后再次执行程序.

在 5.01 版之后, 这是唯一通知您数据库服务器无法再配置内存的错误讯息.

 

 

-209    不兼容的数据库格式.

 

这个数据库是由老旧版本的数据库软件所建立的. 它必须转换, 才能

在目前软件上作业. 使用 dbupdate 公用程序可以达成这个目的. 您必须

在使用数据之前执行它. (从 4.0 版本后这个讯息不再出现.)

 

 

-210    明确的路径名称太长.

 

这个叙述包含了一个档案的路径名称,而此路径名称超过最大长度

 64 字符的限制.请详细检视此叙述以确定路径名称

真的是那么长;可能是标点上的错误导致其他

部份的叙述被含括到此路径名称中.如果不是如此,

您必须重新定位档案或将路径上的一些目录更名以

缩短名称.

 

 

-211    无法读取系统目录 '目录-表格' .

 

数据库服务器在处理多数叙述时, 参考到系统目录表格, 当这些重要表格

之一无法读取时便是一个严重的错误. 请检查伴随的 ISAM 错误码以取得

更多信息. 此错误的效应依执行的叙述及表格的不同而有所差异, 举例如下:

*       CREATE TABLE 叙述, systabauth 无法读取. 表格已建立, 但是

并没有像正常状况下授予权限给 PUBLIC.

*       DROP TABLE 叙述, 未能读取 systables, 没有动作.

*       DROP TABLE 叙述, 未能读取 sysviews, 表格将移除, 但依赖

该表格的任何概观档不会自动移除.

*       DROP VIEW 叙述, 未能读取 sysviews, 没有动作.

*       DROP INDEX 叙述, 未能读取 sysindexes 或 systables, 没有动作.

*       DROP SYNONYM 叙述, 未能读取 systables 或 syssynonyms,

没有动作.

*       DROP DATABASE 叙述, 未能读取 systables, 没有动作.

*       START DATABASE 叙述, 未能读取 systables, 没有动作.

*       DATABASE 叙述, 未能读取 systables 或 sysusers, 数据库未

选择 (没有现行数据库; 后续作业请参阅错误码 -349).

其他叙述在错误侦测到之前, 可能是部份完成. 请回复目前交易, 然后研究

错误的原因. 使用 bcheck 或 secheck 公用程序 (在 INFORMIX OnLine 用

tbcheck 或在 INFORMIX-OnLine Dynamic Sever 用 oncheck) 以检查并维修

索引. 如果必要的话, 从备份和逻辑登录磁带回存数据库.

 

 

-212    无法加入索引.

 

这个叙述试图加入一个索引, 可能是明确的使用 CREATE INDEX, 或是在多

个无索引表格隐含地当成 SELECT 的处理部份, 在任一情况, 一些错误会阻

止建立索引. 请检查伴随的 ISAM 错误码以取得更多信息. 通常的因素是磁盘

空间不足.

 

 

-213    叙述被使用者插断.

 

数据库服务器收到一个来自用户的插断信号, 可能是用户按下了插断键

(通常是 Delete 或 Control-C)所造成, 使此叙述较早结束, 程序应该回复目前

的交易然后和缓地结束. 对于一个交谈式使用者而言, 如果此叙述会修改到

表格, 则应执行 ROLLBACK WORK 以移除任何部份修改.

 

 

-214    无法为表格 '表格-名称' 移除档案.

 

数据库服务器无法完全移除目前显示的表格. 请检查伴随的 ISAM 错误码以

取得更多的信息. 会导致问题的典型因素有操作系统档案权限, 只读文件,

以及硬件错误.

 

 

-215    无法为表格 '表格-名称' 开启档案.

 

数据库服务器无法开启操作系统档案, 或开启表格所在的档案. 请检查随后

的 ISAM 错误码以取得更多的信息. 会导致问题的典型因素有操作系统档案

权限, 缺乏内存, 以及硬件错误.

 

 

-216    无法移除索引.

 

数据库服务器无法完全移除索引. 请检查伴随的 ISAM 错误码以了解更详细资

讯. 操作系统档案权限、只读文件或硬件可能会导致此错误.

 

 

-217    查询时, 未发现表格中有字段 column-name (或SLV尚未加以定义).

 

此名称出现在 select 清单或这个查询的 WHERE 子句, 但该名称在表格中未加以

定义而且不是以叙述局部变量 (SLV) 定义的形式出现. 检查栏名称及 SLV 名

称, 以及所选取表格的名称是按照以你所要的方式拼写.

 

若所有名称拼字正确, 就表示你不是使用正确的表格、数据库已遭变更或是你尚

未定义 SLV. 若尚未找到的名称是栏的参考数据, 该栏可能被重新命名或移除.

若未找到的名称代表 SLV 而且你已在叙述中定义了 SLV, 要确定 SLV 的定

义的出现, 要比参考该 SLV 名称来得早.

 

执行ALTER TABLE叙述时, 当数据库引擎试着更新与表格有关的概观文件时, 此

错误亦会发生.

 

 

-218    同义字 '同义字-名称' 无法找到.

 

同义字并未定义在本数据库中, 请详细检查名称. 如果拼法无误, 请确认您

目前用的是所要的数据库. 如果是, 此同义字必定是已经移除. 可能当它

所在的表格移除时也自动移除. 您可以利用查询 systable, 显示所有已

定义的同义字如下:

SELECT tabname FROM systables WHERE tabtype = 's'

 

 

-219    通用字符匹配无法用于非字符类型.

 

在这个叙述中的 WHERE 子句, 包括一个使用 LIKE 或 MATCHES 关键

字的非字符字段之测试, 以及代表多重字符的特殊字符, 例如, 在 MATCHES

的星号和问号, 以及用在 LIKE 的百分比符号和底线. 如此的测试只有在资

料库中用 CHAR 或 VARCHAR 定义的字段才支持, 自动数据转换并不支持.

请详细检视 WHERE 子句, 以确认那些字段是您要的. 如果是, 表格的定义

即须更改.

 

 

-220    查询中没有 FROM 子句   

 

每一个SELECT叙述必须包括一个 FROM 子句来指名要查询的表格. 检查此

叙述看 FROM 是否并错, 以及是否有额外的冒号意外插在叙述尾端. 如果您

打算只选择一个常数, 或选择与任何表格无关的唯一函数值 (例如 USER 或

TODAY), 您依然必须指名表格. 您可以从系统目录选择一个已知的列, 例如

SELECT 'today is', TODAY, 'and I am', USER FORM systables

WHERE tabid=100

数据库中, 第一个用户定义表格的 tabid 值总是等于100, 因此, 如果任何

表格已定义, 此查询总是刚好回复一列.

( 在 4.1 版及以后版本, 若没 FROM 子句, 会发出 -201 语法错误.)

 

 

 

-220    查询中没有 FROM 子句   

 

每一个SELECT叙述必须包括一个 FROM 子句来指名要查询的表格. 检查此

叙述看 FROM 是否并错, 以及是否有额外的冒号意外插在叙述尾端. 如果您

打算只选择一个常数, 或选择与任何表格无关的唯一函数值 (例如 USER 或

TODAY), 您依然必须指名表格. 您可以从系统目录选择一个已知的列, 例如

SELECT 'today is', TODAY, 'and I am', USER FORM systables

WHERE tabid=100

数据库中, 第一个用户定义表格的 tabid 值总是等于100, 因此, 如果任何

表格已定义, 此查询总是刚好回复一列.

( 在 4.1 版及以后版本, 若没 FROM 子句, 会发出 -201 语法错误.)

 

 

 

-221    无法为新的表格 '表格名称' 建立暂时档.

 

数据库服务器无法建立暂时磁盘档案. 此档案应建立在 DBTEMP 环境变量

所指定的目录之中. 如果 DBTEMP 未定义, 默认作法是数据库服务器会在

root 目录中搜寻一个名称为 tmp 的目录以建立暂时磁盘档案. 请检查伴随的

ISAM 错误码, 以及查看操作系统错误讯息, 以获取更多的信息. 可能您的账号

在该目录没有写入权限, 或可能该磁盘已满. 从 5.01 版以后, DBTEMP

环境变量是由 INFORMIX-SE 数据库服务器所用, 但不用在 INFORMIX

OnLine Dynamic Sever.

 

 

-222    无法写入用于新的表格 '表格-名称' 之暂时档.

 

数据库服务器建立了一个暂时磁盘档案, 但是在当试图对它做写入时, 发生了一

个错误. 请检查伴随的 ISAM 错误码, 以及查看操作系统错误讯息, 以获取更

多的信息. 在 UNIX 系统, 此档案应建立在 DBTEMP 环境变量所指定的目录

之中 (预设为 /tmp); 在 DOS 系统, 这个档案应该在目前所在的目录. 可能该

磁盘已满, 或可能发生硬件故障. 从 5.01 版以后, DBTEMP 环境变量是由

INFORMIX-SE 数据库服务器所用, 但不用在 INFORMIX OnLine Dynamic

Server.

 

 

-223    在 FROM 子句中有重复的表格名称 '表格名称' .

 

此名称在 FROM 后的串行中出现了两次, 请重新检视该叙述, 查看您是否

企图对其它表格二度指名. 如果您要把一个表格链接到其本身, 您需要于

再度与后续运用到此表格的时机使用表格别名. 例如, 寻找具有相同 last name

之 customers 的一个方式如下:

SELECT main.lname, main.customer_num, sub.customer_num

FROM customer main, customer sub

WHERE main.lname = sub.lname AND main.rowid != sub.rowid

当您使用表格别名 (如范例中的 main 和 sub) 时, 表格便可选择两次或

更多次.

 

 

-224    无法开启交易日志文件.

 

数据库服务器无法开启登载交易登录的档案. 一直要到此文件恢复前无法启始

任何交易. (在一个符合 ANSI 标准的数据库, 什么也不能做; 在其它的数据库,

则只能做查询.) 当使用 INFORMIX OnLine Dynamic Sever, 请向 OnLine 管理

员报告这个问题. 对其它数据库服务器而言, 请检查伴随的 ISAM 错误码以及察

看操作系统错误讯息以获取更多的信息. 日志文件的路径必须用 START

DATABASE 叙述来指定, 如果此档案已经删除, 您可以重新建立它为一个空

的档案. 如果此路径已经改变, 您可以发出一个新的 START DATABASE 叙

述重新定义它.

 

 

-225    无法为系统目录 '表格名称' 建立档案.

 

数据库服务器 (并非 OnLine ) 可能在某个 CREATE DATABASE 叙述尝试

为系统目录建立一个表格, 主机操作系统的某个问题使它无法建立.

请检查伴随的 ISAM 错误码以获得更多信息并察看操作系统错误讯息. 可能是

磁盘空间不足及操作系统档案访问权限的问题.

 

 

-226    无法建立索引用于系统目录 '表格名称' .

 

数据库服务器 (并非 OnLine) 可能是某个 CREATEDATABASE 叙述尝试

为系统目录建立一个表格, . 表格建立了但在主机操作系统制作索引上有一个

问题. 请检查伴随的 ISAM 错误码以获得更多信息, 并察看操作系统错误讯息.

可能是磁盘空间不足.

 

 

-227    禁止 ROWID 上的 DDL 作业.

 

这个叙述企图去插入或更改指命在栏清单中的 ROWID, 该字段是除了区段

表格之外每个表格的一部份.  您可以用 SELECT 叙述选择, 以及在 WHERE 子句

中做比较, 但它不能被任何 DDL 叙述更改.

 

 

-228    禁止 UPDATE 或 INSERT ROWID.

 

这个叙述在字段串行中指名 ROWID 用于插入或更新. 然而 rowid 是不能

修改的. 您可以在 SELECT 叙述中加以选择, 以及在 WHERE 子句中比较,

但它的内容不能修改.

 

 

-229    不能开启或建立暂时档.

 

数据库服务器不能建立暂时的磁盘档案. 档案应该建立在 DBTEMP 环境变量

指定的目录下 (或在 UNIX 系统上默认的 /tmp ). 检查伴随的 ISAM 错误码并

找寻可能提供更多信息的操作系统错误讯息. 有可能是你的帐户在该目录中不

具有写入权限, 或磁盘已满. 从 5.01 版以后, INFORMIX-SE 数据库服务器使

用 DBTEMP 环境变量, 但Informix 活动服务器和 INFORMIX-OnLine Dynamic

Server则不是.

 

在 UNIX 系统上, 试着增加开启档案的最大数目 (在某些系统上则是NFILES

参数) 到 400 个左右.

 

 

-230    无法读取暂时档.

 

数据库服务器建立了一个在 DBTEMP 环境变量所指定目录的暂时文件, (或是

在 UNIX 系统默认的 /tmp), 但是目前在尝试读回时遭遇到错误. 请检查伴随的

ISAM错误码, 并察看操作系统错误讯息, 它们可能提供更多信息. 可能已经发生

硬件故障, 亦可能是另一个使用者意外地清除了此暂时档. 自从 5.01 版本后,

DBTEMP 环境变量是用在 INFORMIX-SE 数据库服务器, 而不用在 INFORMIX

OnLine Dynamic Sever.

 

 

-231    无法在表达式上执行 distinct 的累积函数.

 

这个叙述在累积函数内选择 DISTINCT (expression). 无法支持这个作业,

请选择 DISTINCT 值和其它字段至暂时表格中, 然后从该表格选择 ALL,

以应用此累积函数.

 

 

-232    有个 SERIAL 栏 '栏名称' 可能无法更新.

 

您不能在 UPDATE 叙述中改变具有 SERIAL 类型的字段内容, 甚至

当更新数值为零的时候. (当使用 INSERT 叙述时, 您可以指定一个零的数值,

用于一 serial 字段, 数据库服务器会忽略零值, 然后插入一个产生的数字.)

修改此叙述只更新非 serial 的字段.

 

 

-233    无法读取被另一用户锁定的记录.

 

由此叙述所选取的列已经被另一个使用者锁定. 如果您用交谈方式执行此叙述,

您可以进行以下两件事情之一. 您可以做个短暂等待然后再输入此叙述. 或者,

您可以执行 SET LOCK MODE TO WAIT 叙述, 此后您就很少会再看到这个

讯息.

在程序中, 您应该回复目前的交易, 等待一个随机长度的间隔, 然后重新执行

此交易. 利用 WAIT 的 LOCK MODE 可以减少这个错误的频率, 但它仍然可能

在其它情况下发生, 例如, 当侦测到死结发生. 此错误经常伴随着以下 ISAM

错误码之一 -107, -113, -134, -143, -144, or -154, 而程序可能需要对每一个

错误码做出不同的回应.

 

 

-234    无法插入虚拟栏 '栏名称' .

 

这个 INSERT 叙述导向一个概观文件, 而非一个真实表格, 而且概观档内所

定义的栏之一实际上是表达式的值. 有此字段的概观档并不允许做插入与更新,

必须把 INSERT 应用到作为概观文件基础的真实表格.

 

 

-235    字符字段大小过大.

 

叙述指定给 CHAR 数据类型字段的宽度大于 32,767, 或是用于 VARCHAR 栏

位的宽度超过 255. 如果您需要那么大的栏, 您必须使用 TEXT 类型, 它允许没

有限制的长度. 否则, 请详细检查叙述是否错误.

 

 

-236    在 INSERT 的字段数量与 VALUES 的数量不符合.

 

每个 INSERT 叙述中指名或隐含的字段皆需有分别的值表达式. 如果此叙述

并没有列出特定的字段, 请重新检视表格的定义, 以了解字段数目与它们的类型.

同时详细检查在 VALUES 子句内的表达式串行, 以确认并没有额外或遗漏逗点,

以免引用错误的值数目. 请特别留意长字符字符串以及具有括号的表达式.

 

 

-237    无法开始作业.

 

数据库服务器无法执行 BEGIN WORK 叙述. 请检查伴随的 ISAM 错误码以获

得更多的信息. 可能有存取交易登录上的问题.

 

 

-238    无法确认作业.

 

数据库服务器无法执行 COMMIT WORK 叙述. 请检查伴随的 ISAM 错误码以

获得更多的信息. 可能有个存取交易登录上的问题.

 

 

-239    无法插入新列 - 在 UNIQUE INDEX 字段有重复值.

 

插入的列 (或更新以拥有一个新的主键值) 包含了重复的值, 在插入

到一些已经存在且具有限制单一值字段的列时, 此列不能插入. 回复目前

的交易, 然后在没有任何重复列的情况下重新执行它.

 

 

-240    无法删除列.

 

数据库服务器无法完成执行 DELETE 叙述. 请回复目前的交易, 然后检查伴随

的 ISAM 错误码以获得更多信息.

 

 

-241    无法回复作业.

 

数据库服务器无法执行 ROLLBACK WORK 叙述. 请检查伴随的 ISAM 错误码

以获得更多信息. 可能在存取交易登录时有问题.

 

 

-242    无法开启数据库表格 '表格-名称' .

 

数据库服务器无法开始读取一个表格. 请检查伴随的 ISAM 错误码以获得

更多信息.可能有档案访问权限的问题, 或是硬件错误, 或系统注册表可能毁损.

除非 ISAM 错误码或操作系统讯息指向另一个原因, 执行 bcheck

或 secheck 以查验档案的完整性.

 

 

-243    无法在表格 '表格-名称' 内定位.

 

数据库服务器无法配置文件案位置至表格所在的档案内之特定的列. 请检查伴

随的 ISAM 错误码以获得更多信息. 可能有硬件错误或档案可能毁损 (档案被

截断). 除非 ISAM 错误码或操作系统讯息指向另一个原因, 执行 bcheck

或 secheck 公用程序以查验档案的完整性.

 

 

-244    无法进行实体顺序读取以取得下一列.

 

数据库服务器无法读到包含表格的一列内容之磁盘分页. 请检查伴随的

ISAM 错误码以获得更多信息. 表格文件或索引文件可能毁损. 可能存在一个

硬件问题, 或是表格或索引档案已经损坏. 除非 ISAM 错误码或操作系统

讯息指向另一个原因, 执行 bcheck 或 secheck 公用程序以查验档案的

完整性.

 

 

-245    无法透过索引在档案内定位.

 

数据库服务器在透过索引寻找一个列时遭遇到一个错误. 请检查伴随的

ISAM 错误码以获得更多信息. 表格文件或索引文件可能毁损. 除非 ISAM

错误码或操作系统讯息指向另一个原因, 执行 bcheck 或 secheck 公用程序

以查验档案的完整性.

 

 

-246    无法进行索引读取以取得下一列.

 

数据库服务器在透过索引寻找一个列时遭遇到一个错误. 请检查伴随的

ISAM 错误码以获得更多信息. 表格文件或索引文件可能毁损. 除非 ISAM

错误码或操作系统讯息指向另一个原因, 执行 bcheck 或 secheck 公用程序

以查验档案的完整性.

 

 

-247    Rollforward 数据库故障.

 

数据库服务器无法应用稽核追踪, 以将数据库 rollforward. 请检查伴随的

ISAM 错误码以获得更多的信息.

 

 

-248    无法确认储存点.

 

4.1 版之后的产品可以侦测到这个内部错误. 如果这个错误再度出现,

请记下所有的情形, 并且联络 Informix 技术支持部门.

 

 

-249    虚拟字段必须有明确名称.

 

当您选择了 INTO TEMP, 您正在建立一个表格. 如同其他表格, 暂时表格的字段

必须全部具有名称. 当您选取单一栏时, 暂时表格的字段会收到相同的名称, 当您

选取一个表达式时, 您必须使用字段别名以提供一个名称, 就如同以下范例:

SELECT order_num, ship_date, ship_date + 14 expected FROM orders

INTO TEMP ord_dates

暂时表格 ord_dates 有三个域名为 order_num, ship_date, 和 expected.

相同的原理应用至概观文件: 每个字段必须有一个名称, 当您从表格中选取概观文件

所有的栏时, 概观档内的预设域名和它一样. 当概观档的任一字段是从一个

表达式衍生出来的, 所有的字段则必须给定明确的名称, 就如同以下范例:

CREATE VIEW ord_dates(order_num, ship_date, expected) AS

SELECT order_num, ship_date, ship_date + 14 FROM orders

 

 

-250    无法由档案读取记录做更新.

 

数据库服务器无法在更新前读取表格中的列. 检查伴随的 ISAM 错误码以获

得更多信息. 可能该列或该表格已经被另一个使用者锁定, 或者可能有一个

更严重的问题 .

 

 

-251    ORDER BY 或 GROUP BY 字段号码太大.

 

此 ORDER BY 或 GROUP BY 子句使用字段序号, 而且至少它们其中之一大于

在选择清单内的字段计数. 详细检查此叙述, 以查看是否为子句输入错误,

或者是选择列表中忽略了某个项目.

 

 

-252    无法获得表格的系统信息.

 

此数据库服务器无法存取与表格相关的系统信息. 检查伴随的 ISAM 错误码以

获得更详细的信息. 除非 ISAM 错误码或操作系统的讯息指向其它的原因, 请

执行 oncheck 工具以查验档案的完整性.

 

 

-253    标识符太长 - 最大长度是 18.

 

这个叙述包含了一个超过最大长度的名称. 请详细检查名称的长度, 或者是否

有打字错误, 而导致两个名称被并在一起执行.

 

 

-254    指定的主机变量太多或太少.

 

这个叙述之 INTO 子句内所指名的主机变量数目, 与写在叙述中所有的 "?"

placeholders 数目并不符合. 搜寻叙述中的文字 (在 PREPARE 或 DECLARE

叙述), 并查验 place holders 的数目, 然后再检查 INTO 子句内的清单以查看

是何者造成错误.

 

 

-255    不在交易中.

 

数据库服务器无法执行这个 COMMIT WORK 或 ROLLBACK WORK 叙述,

因为没有执行 BEGIN WORK 以启始一个交易. 既然没有启始交易, 也就无法

做结束动作. 现在所完成的任何数据库修改是永久性的, 它们不能回复但并不

需要确认. 请重新查看 SQL 叙述的顺序以查看交易应该在那里开始.

 

 

-256    无法使用交易.

 

你无法在数据库中启动交易, 因为数据库不具有交易登录. 若要支持交易, 必须

启动交易登录. 请参阅 Administrator's Guide 以获得启动交易登录方式的信息.

 

 

-257    系统限制的叙述最大数量已经超过 '计数' 的最大值.

 

数据库服务器仅能为每个使用者处理固定数量的 SQL 叙述. 此限制含以

PREPARE 准备的叙述以及用 DECLARE 宣告的光标. 此叙述 (PREPARE,

DECLARE, 或 PREPARE IMMEDIATE) 超出了该限制, 所以此叙述不可执行.

FREE 叙述则可以释放准备的叙述. 重新查看您的程序逻辑并更正它, 以释放

不必要的叙述.

 5.0 版以后的数据库服务器没有此限制. 但无论如何, 为了与早期版本的程序

兼容, 仍然应该使用 FREE 以保留以上的限制.

 

 

-258    系统错误 - sqlexec 程序

收到不正确的叙述 id.

 

目前的叙述 (EXECUTE 或 OPEN) 参考一个

准备好的 SQL 叙述或不存在的游标.叙述 id 可能

不正确,或叙述虽准备好,却被 FREE 叙述

释放.重新检查程序逻辑以确定此

叙述命名的叙述或光标是正确的,而且已适当地

准备或宣告,也没有在此之前

被释放.

如果程序成功地执行一个准备好的 DATABASE 叙述,

此数据库服务器会自动释放准备好的叙述.

如果您释放一个准备好的 DATABASE 叙述,您将会收到

此 FREE 叙述的错误讯息.在这种情况下,您可忽略它.

System error - invalid statement id received by the

sqlexec process.

 

 

-259    游标并未开启.

 

参考游标的现有叙述未开启. 重新查看程序的逻辑以了解如何在到达此点之前

执行 OPEN 叙述失败. 结束交易的叙述 (COMMIT WORK and ROLLBACK

WORK) 同时关闭光标 , 除非光标宣告 WITH HOLD.

 

 

-260    不能够执行一个被 PREPAREd 的 SELECT 叙述 - 必须使用光标.

 

虽然您能准备一个 SELECT 叙述, 而您能执行 SELECT 的唯一方法是以光标

加上它的叙述 id ( 使用 DECLARE 叙述 ) 而且同时开启光标.

一个很重要的例外是 SELECT...INTO TEMP 叙述, 它不能和光标一起使用.

其他已准备的叙述可能可以与 EXECUTE 叙述一起执行. 如果 SELECT 叙述的

内容在您正在写程序的时候已知道, 而且如果确定只有传回单一列的数据, 您能

在程序中插入它. 如果当程序正在执行时它必须动态地准备, 那么您必须修改您

的程序借着光标来执行它.

 

 

-261    无法建立表格 table-name 的档案.

 

一般说来, 数据库服务器不能建立代表这个表格的档案. 检查伴随的 ISAM

错误码以获得更详细的信息. 在 INFORMIX-SE的 database.dbs 目录中 (除非

提供了 IN 路径子句), 可建立文件名. 文件名会以表格名称前几个字母做

为开始, 后面接着 3 个数字和 .dat 或 .idx的字尾. 对 INFORMIX-SE而言, 可

能是因为档案权限的问题, 或可能磁盘已满.

 

Informix 活动服务器和 INFORMIX-OnLine Dynamic Server 允许表格分段, 可

能造成广泛地使用dbspaces. 需要检查针对表格而指定的 dbspace. 若未指定

dbspace, 那么直接使用建立数据库的 dbspace. 数据库的建立, 若未指定 dbspace,

那么 rootdbs会加以使用. 指定的 dbspace 可能不存在, 或可能磁盘已满.

 

 

-262    没有现有的游标.

 

这是内部错误不应该发生. 请注意使用的网络软件的所有明细和本主机或其

他主机上的数据库服务器的版本层级. 若这个错误再度出现, 请记下所有的情况,

并且联络 Informix 技术支持部门.

 

 

-263    不能为 UPDATE 锁定列.

 

可能宣告光标 FOR UPDATE 的 FETCH 这个叙述, 因为它无法锁定已取得的列

而失败. 请检查伴随的 ISAM 错误码 (通常为 -107, -113 , -134 , -143 , -144 ,

或 -154 中的一个), 以得到较多的讯息. 最有可能的原因是由于另外的程序

正在使用列 ( -107 ) 或表格 ( -113 ) . 使用 SET LOCK MODE TO WAIT 可以

解决这些错误, 但是死结 ( -143 或 -154 ) 和表格锁定已满 ( -134 ) 的情形

仍然可能会发生.

 

 

-264    无法写入暂存档.

 

数据库服务器在 DBTEMP 环境变量指定的目录中建立一个暂存盘, (或是 UNIX

系统上默认的 /tmp ), 但是现在它遇到尝试写入数据的错误. 请检查伴随的

 ISAM 错误码, 并且寻找可能提供较多讯息的操作系统错误讯息. 可能发生硬件

故障的情形; 也可能是磁盘已满. 从 5.01 版后, INFORMIX-SE 数据库服务器使

用 DBTEMP 环境变量, 但是 INFORMIX-OnLine Dynamic Server 并不使用此变量.

 

 

-265    加载或插入光标必须在交易里执行.

 

您尝试开启一个插入游标 . 这个数据库有交易登录. 在此种数据库中, 您必须

在开启以 INSERT 叙述或 FOR UPDATE 子句宣告的光标之前执行一个 BEGIN

WORK 叙述. 请修改您的程序逻辑使得交易在开启光标前起动.

您可以确定程序在没有交易登录的数据库中是否也能工作. 改变程序使得在执

行 DATABASE 叙述之后, 立即将 SQLAWARN 数组警告旗号的第二个元素存到

SQL 通讯区域中. 如果数据库不使用交易, 则通讯区域中包含空白, 若使用交易

则为 W . 在交易的每个逻辑起始或结束点, 测试存放的值, 若是 W, 则执行此

交易叙述以起始或结束交易.

 

 

-266    没有现有列来 UPDATE/DELETE 游标.

 

现有的叙述运用 WHERE CURRENT OF 光标名称子句, 但此光标尚未与现有的

行联合. 可能叙述在开启后没有执行 FETCH , 或最近的 fetch 导致错误, 因而没

有传回任何列. 请修改程序的逻辑, 使列可以在叙述执行前成功地取得.

 

 

-267    游标先前已释放且尚未可用.

 

FREE 叙述释出配属给游标的资源. 在您使用光标之前, 必须再准备一次与其相关

的 SQL 叙述. 如果光标宣告为 FOR 叙述, DECLARE 必须重新执行. 如果宣

告为 FOR 叙述 id, PREPARE 叙述就必须重新执行一次.

 

 

-268    违反唯一的限制 '限制名称' .

 

在这个叙述的执行期间, 重复的值被引入被唯一限制所保护的栏中. 有重复值的

列是不允许进入表格 ( 不能插入或更新 ) 之内. 在 OnLine 数据库服务器里,

发现重复值之前, 这个叙述所做的任何改变已经回复. (在交易中如果存在有

先前的叙述, 其结果仍维持有效, 然而必须外在地回复或确认.)

 

 

-269    不能够增加不接受 nulls 的栏 '栏名称' .

 

这个叙述要求有 NOT NULL 限制的一个新栏. 然而, 当栏加入到已存在的表格

时, null 值会安装在已存在的列中. 请定义包括这个栏的新表格, 然后从旧表格中

INSERT 数据, 提供一些适当的 nonnull 值给这个栏.

 

 

-270    不能在暂存档里面定位.

 

数据库服务器在 DBTEMP 环境变量指定的目录中建立了一个暂存档, ( 或在

UNIX 系统上预先设定的 /tmp) , 但是现在遭遇到尝试定位 (寻找) 的错误. 检查

伴随的 ISAM 错误码, 而且寻找操作系统错误讯息可能得到比较多的信息. 可能

有硬件故障; 也可能另外的使用者截断该档案. 从 5.01 版 DBTEMP 环境变量使

用于 Informix-SE 数据库服务器, 但是不使用于 INFORMIX-OnLine Dynamic

Server.

 

 

-271    不能够在表格之内插入新的列.

 

发生这个问题的原因很多, 举例来说, 锁定的表格或磁盘已满.

检查伴随 ISAM 错误码以求得较多的讯息.

 

 

-272    没有 SELETE 访问权限.

 

建立这个表格的人还没有给予您的账户名称或 PUBLIC 的选取权限. 在您能从

其中选择数据之前, 表格的拥有人或 DBA 必须授予该权限.

 

 

-273    没有 UPDATE 访问权限.

 

建立这个表格的人还没有给予您的账户名称或 PUBLIC 的更新权限. 在您能从

这个表格内更新一个列之前, 表格的拥有人或 DBA 必须授予该权限.

 

-274    没有 DELETE 访问权限.

 

建立这个表格的人还没有给予您的账户名称或 PUBLIC 的删除权限. 在您能从

这个表格内删除一个列之前, 表格的拥有人或 DBA 必须授予该权限.

 

 

-275    没有 INSERT 访问权限.

 

建立这个表格的人还没有给予您的账户名称或公共的插入权限. 在您能从

这个表格内插入一个列之前, 表格的拥有人或 DBA 必须授予该权限.

 

 

-276    找不到游标.

 

在这个叙述里指名的游标还没有在现有的会期中宣告. 现有的会期会从

DATABASE 叙述的执行跳到下一个 DATABASE 或 CLOSE DATABASE 叙述.

重新查看程序的逻辑了解它在 DATABASE 叙述之后为光标执行 DECLARE

叙述.

这个错误讯息不在 5.01 版以后的数据库服务器使用.

 

 

-277    UPDATE 表格的 table-name 与光标表格不同.

 

这个 UPDATE WHERE CURRENT OF游标叙述指的是与SELECT叙述参考的

不同表格, SELECT 叙述也是以游标来宣告. 检查程序逻辑以确定透过光标的更

新, 只能更新光标正在读取的表格. 这个讯息也适用使用DELETE WHERE

CURRENT OFF 的游标叙述.

 

 

-278    ORDER BY 的字段太多

 

此 SELECT 叙述要求排列的字段超过数据库服务器所能支持.  此限制视所用

的数据库服务器而定, 但处理排序上都最多只到 8 个字段. 更新此叙述以便排列

较少的字段. (4.0 及以后的版本对 ORDER 的字段数没有任意的限制. 十分复杂

的排序会使数据库服务器用尽内存或磁盘空间. )

 

 

 

-278    ORDER BY 的字段太多

 

此 SELECT 叙述要求排列的字段超过数据库服务器所能支持.  此限制视所用

的数据库服务器而定, 但处理排序上都最多只到 8 个字段. 更新此叙述以便排列

较少的字段. (4.0 及以后的版本对 ORDER 的字段数没有任意的限制. 十分复杂

的排序会使数据库服务器用尽内存或磁盘空间. )

 

 

 

-279    无法给予或是废除对表格或是概观文件的数据库权限.

 

这个叙述指名一或数个数据库层级的权限

(CON-NECT, RESOURCE, 与 DBA),

但是它也使用了 ON '表格-名称' 子句.

没有提到特定表格 ( 没有包含 on 子句 ) 的

叙述必须给予或废除数据库层级权限. 表格层级的权限

像是 INSERT 需要 ON 子

句, 所以这两类不能混在相同的叙述中.

 

 

-280    字符串超过了 256 个字节.

 

在这个叙述中有一个字符文字超出了所能容许的极限. 检查这个叙述中所有字符串

的标点及长度. 有可能是遗漏了两个引号, 使得一个长字符串变成了两个短的字符串.

您必须重新撰写这个叙述, 以使用较短的字符字符串.

 

 

-281    无法加入索引到暂时性的表格.

 

检查附属的 ISAM 错误码以找出特定的问题, 并且寻找操作系统的错误讯息,

它将能提供更多的信息. 有可能是磁盘已满.

 

 

-282    找到一个未成对的引号

 

检查现在的叙述, 查核所有加上引号字符串的标点. 若要在文字字符串中包含引号

字符, 可采用单引号作为字符串的分界符号, 如下所示:

SELECT '"', fname,'"', "''", lname, "''" FROM customer

 

 

-283    发现一个未终止的批注 ("{" with no matching "}")

 

检查现在的叙述, 查核批注的标点与括号字符串. 您可使用大括号将批注插入 SQL

叙述中, 但是这些大括号务必须成对. 另一种方式是批注必须以双连字符附加

在行尾.

 

 

-284    一个子查询传回了不只一列.

 

一个表达式中的子查询用在一个文字值, 它必须只传回单独的一列与单独的一栏.

在这个叙述, 有一个子查询传回了不只一列, 造成数据库服务器无法选择那个回

传值要用在表达式. 您可以确定子查询永远只传回单独一列. 使用 WHERE 子句

以测试具有唯一索引的字段的值是否与条件式值相等. 或是只选取累积函式. 请

检视该子查询并确定它只能传回单独的一列.

当您采用一个 SELECT 叙述来撷取数个列时, 也会出现这种错误. 您必须使用

DECLARE/OPEN/FETCH 系列的叙述, 或是 EXECUTE INTO 叙述来撷取数

个列.

 

 

-285    sqlexec 接受到不正确的游标.

 

使用在这个叙述的光标没有适当的宣告或是准备, 或者它已经被 FREE

叙述所释放. 检视程序的逻辑以确定该光标已经宣告. 假使如此, 而且如果

DECLARE 叙述参考到一个叙述 id, 请确定参考的叙述已经预备好了.

 

 

-286    主键的默认值字段 '栏-名称' 为 NULL.

 

一个为主键之一部份的字段不能有 null 作为它的默认值.

 

 

-287    无法加入串行栏 '栏-名称' 到表格.

 

无法加入 SERIAL 的数据类型字段到既有的表格. 这个字段不可能包含 null

值, 但是当加入一个字段时, 数据库服务器必须把 null 值置入全部既有的列.

您可以依如下的三个步骤加入一个串行栏. 首先以数据类型 INTEGER 加入

该字段, 然后以置入非 null且唯一的值于新字段的各列以更新表格. 最后使用

ALTER TABLE MODIFY 来改变字段的数据类型到 SERIAL.

 

 

-288    表格 '表格-名称' 没有被目前的使用者锁定.

 

这个 UNLOCK TABLE 叙述指名了一个未锁定的表格. 如果您在稍早锁定了

该表格, 它已经解除锁定. 当交易结束或是当数据库关闭时, 表格会自动

解除锁定. 如果表格被其他的用户锁定, 您将无法将它的锁定解除.

 

 

-289    无法以所需要的模式来锁定表格 '表格-名称' .

 

这个表格已经以排它模式锁定了. 在继续作业前您必须等待该表格解除锁定.

 

 

-290    游标未以 FOR UPDATE 子句宣告.

 

这个叙述试图以一个未宣告做为更新之用的游标来更新. 数据库服务器不允

许这样的作业; 这是因为它得同时顾虑到安全上的考虑以防止程序的错误以及

执行效能上的特性. 为了以 UPDATE 或是 DELETE 叙述来使用光标, 您必须

宣告它用来更新. 重新检视该程序的逻辑以确定要使用的光标用在这个叙述.

当作业于一个遵循 ANSI 规格的数据库时, 任何的光标都可以用来做更新; 所以

FOR UPDATE 子句并不需要 (并产生一个警告).

 

 

-291    无法改变表格的锁定模式.

 

目前的 LOCK TABLE 叙述无法执行, 因为您已经用了一个不同的模式

(EXCLUSIVE 或 SHARE) 锁定了相同的表格. 如果试图是要改变锁定模式,

试着在再次锁定它之前, 先解除表格的锁定.

 

 

-292    隐含的插入栏 '栏名称' 并不接受 NULLs.

 

INSERT 叙述并不提供表格中所有栏的值. 至少它省略的其中一栏会被限制为非

null. 因为数据库服务器必须在每个没有提及的栏中插入 null 值, 所以它无法执行

此插入. 请检查叙述与表格定义. 可能是由于表格的定义已经改变.

 

 

-293    IS [NOT] NULL 述词只可能用在简单的栏中.

 

null 值的测试只能应用在栏名称上 (举例来说不能应用在有下目标字符栏或运

算式). 请检查 WHERE 子句中这些关键词的使用.

 

 

-294    栏 '栏-名称' 必须在 GROUP BY 清单中.

 

在群组的 SELECT 中, 您必须在 GROUP BY 子句中列出每个非累积栏. 如此可

以确定在每个群组列中的每一个选取的栏, 其值的定义正确: 栏会包含单一的累

积值, 或者是对该群组来说是唯一的值. 如果选取的栏不是累积也不在清单中, 则

有可能在某些群组中, 该栏会有两个或更多的值, 因而数据库服务器无法选择要

显示那一个. 请修改查询将栏名称或其在子句中位置的序号包括进来.

 

 

-295    被参考和参考的表格必须要在相同的数据库中.

 

参考的限制无法跨数据库. 换句话说, 被参考栏和参考栏 (或母键和子键) 必须在

相同的数据库中.

 

 

-296    被参考的表格 '表格名称' 找不到.

 

在参考限制中指定的表格不存在.

 

 

-297    在被参考表格 '表格名称' 中找不到唯一的限制或主键.

 

数据库服务器无法在 sysconstraints 系统目录表格中找出被参考的限制, 而被

参考的限制如参考限制一样建立在相同的 ALTER TABLE 叙述中. 被参考的限制

可能不存在. 请检查您是否有将与栏名称有关的适当限制输入正确的栏名称. 如

果限制栏是正确的, 则这是一个内部错误. 如果错误重现, 请记录所有的情况并

联络 Informix 技术支持部门.

 

 

-298    不能以授予选项将访问权限授予 PUBLIC.

 

WITH GRANT OPTION 允许授予接收者, 可以授予其他人相同的权限的能力.

目前的情况是授予接收者为 PUBLIC, 所以如果执行此叙述, 每个人都能够拥有

权限, 所以每个人也都能够授予权限. 这种作业方式是禁止的. 请指名要授予者

或省略 WITH GRANT OPTION 子句.

 

 

-299    不能授予本身访问权限.

 

GRANT 叙述将您的使用者 id 包括在被授予者中. 如果您能够授予权限, 就表示

您已经拥有权限. 请从 TO 子句中重新写入叙述以省略您的使用者名称.

 

 

-300    GROUP BY 栏太多.

 

可能会在 GROUP BY 子句中列出的栏数是数据库服务器的内部设计限制.所有

的数据库服务器支持至少八栏. 请检查目前的叙述以确定 GROUP BY 子句的

标点符号是正确的. 如果这是您所要的, 您就必须要想办法在两个或更多的阶段

中执行查询. 因为所有非累积的选取栏必须在 GROUP BY 子句中列出, 而且

清单的长度有所限制, 您就需要只选取能用来区别每个群组的非累积值. 将群组

结果放在暂时表格中, 并将此表格与原始的表格联结, 以选取其他的非累积值.

 

 

-301    GROUP BY 字段大小的总合过大.

 

数据库服务器会限制 GROUP BY 子句列出的结合字段中字节的总数. 所有数据

库服务器支持至少 120 位. 请参考错误 -300 的讨论以获得更多的信息.

 

 

-302    在多重表格概观文件中没有授予选项或不合法的选项.

 

无法执行授予叙述. 您没有权力能够授予此表格指定的权限; 所提供的表格

名称为同义字; 或者表格实际上是无法授予此选项的概观文件. 若要授予任何

权限给表格, 您必须在此数据库中拥有 DBA 权限, 或您必须为表格的拥有者,

或者必须已经授予您与 WITH GRANT OPTION 相同的权限. 如果上述事项

中有一项为真, 则问题必定是所谈到的表格的确是同义字或是无法修改的概观

檔, 所以不能用在插入, 更新,或删除作业.

 

 

-303    表达式将累积的栏混合.

 

不允许 SELECT 叙述在其 WHERE 子句中使用累积函数. WHERE 子句必

须在扫瞄表格时以列接着列的方式应用, 而累积函数只能在已经选择和群组

化所有列之后才能够计算. 请检查此叙述并记住结果. 如果您只想选取某些记

录群组, 您可以在 HAVING 子句中放入类似的测试; 它会应用在群组列中.

此讯息的文字会有点使人误解. 事实上您可以在表达式中混合栏名称以及累积

的功能. 然而, 您只能在选取清单或 HAVING 子句中 (不是在 WHERE 子句)

这样做, 而栏必须出现在 GROUP BY 子句中.

版本5.01 以后的数据库服务器版本没有使用此错误讯息.

 

 

-304    HAVING 只能拥有具有累积的表达式或 GROUP BY 子句中的栏.

 

HAVING 子句的作用是在群组完成后, 选取完整的列. 因此它能够测试的唯一

选取值是在完成群组后的列中可以使用的值, 也就是在 GROUP BY 子句中的单

一字段, 以及累积值. 请检查 HAVING 子句并记住规则. 如果您希望在群组产生

以前先选取特定的列, 您可以使用 WHERE 子句.

 

 

-305    下目标栏 '栏名称' 的类型不是 CHAR, VARCHAR, TEXT 或 BYTES.

 

您可以只从所提到类型的栏中选取子字符串. 请检查此叙述中所有中括号的使用,

并确定字段是这些类型其中一种. 如果您认为上述数据无误, 则请确认您所使用

的数据库是您想要的, 并再次检查表格的定义. 可能表格内的其中一栏已经变更

为不同的类型.

 

 

-306    下标超出范围.

 

此叙述与字符变量的子字符串有关. 子字符串 (在中括号中的两个值) 的值不正确.

第一个数值小于零或大于栏的长度, 或是第二个值小于第一个值. 请检查

叙述中所有中括号的使用以找出错误. 可能是栏的大小已经变更, 使得原先可

以执行的子字符串作业失败.

 

 

-307    下标定义不合法.

 

此叙述与字符变量的子字符串有关. 子字符串 (在中括号中的两个数值) 的值不正确.

第一个数值小于零或大于栏的长度, 或是第二个值小于第一个值. 请检查叙述

中所有中括号的使用以找出错误. 可能是栏的大小已经变更, 使得原先可以

执行的子字符串作业失败.

 

 

-308    每个 UNION 叙述相对的栏类型必须兼容.

 

在 SELECT 叙述的 UNION 中的所有列必须要有相同的格式. 这表示每个栏应该

有相同的数据类型. 然而在目前的叙述中, 在第二或其后 SELECT 叙述的栏, 与

先前的 SELECT 叙述中相对的栏并不符合. 请检查并比较所有的 SELECT 叙述,

检查与先前 SELECT 叙述选择不同栏的点. 在 UNION 期间不会提供自动数据转

换; 数据类型必须与选取的类型相同. 如果没有办法做到, 请考虑设定暂时表格,

并使用一连串的 INSERT 叙述以填上想要的列. 在 INSERT 期间会应用自动数据

转换, 所以虽然会有不同, 但是却能够兼容, 能够强制数据类型成为相同的类型.

 

 

-309    ORDER BY 栏 '栏名称'  必须在 SELECT 清单中.

 

所指的栏出现在此 SELECT 的 ORDER BY 子句中, 但是并没有在选取清单中

(跟着 SELECT 这个字之后的值清单). 这个动作并不支持; 所有排序关键字必须出现

在输出列中, 使得排序的顺序得以完成. 请修正叙述以使其遵循此原则. 如果您

只希望在与此栏有关的表达式上排序, 而不是在栏本身排序的话, 您可以藉由在

选取列表中的表达式所在位置序号来参考此表达式.

 

 

-310    表格 '表格名称' 已经存在于数据库中.

 

此叙述尝试以所示的名称建立表格, 但是巳有一个具有相同名称的表格存在. 在

单一数据库中表格名称是唯一的. (在符合 ANSI 标准的数据库中, 建立表格的使

用者名称可以附加到表格名称上, 所以针对每一名使用者, 可以有一个所指名称

的表格.)

请检查名称的拼法; 如果此名称是您想要的, 而且您确定它不应该存在, 则请确

定您正在使用的数据库是正确的. 您可以藉由如下的叙述查询 systables 来检查

此数据库中所有表格的名称:

SELECT tabname FROM systables WHERE tabid > 99

这个叙述只会显示永久表格的名称. 暂时的表格不会在 systables 中列出. 如果

名称未出现, 请结束您的数据库会期并启动一个新的会期; 暂时的表格将会移除.

 

 

-311    不能开启系统目录 '表格-名称' .

 

数据库服务器无法存取系统目录中的表格. 请检查伴随的 ISAM 错误码以获得

有关错误产生的详细信息, 并查看操作系统的错误讯息, 可以提供您更多的信息.

 

 

-312    不能更新系统目录的 '表格-名称' .

 

数据库服务器无法记录在系统目录表格中的改变. 请检查伴随的 ISAM 错误码来

获得有关错误产生的详细信息. 常见的原因是由于磁盘空间不足.

 

 

-313    不是表格的拥有者.

 

此叙述尝试执行的动作, 只能由表格拥有者或由拥有数据库管理员权限来完成

(例如移除表格). 请确定叙述所指名的表格是您想要的. 如果是的话, 您必须

知道其拥有者或 DBA 才能执行此叙述. 若要取得相关的信息, 您可以利用以下

的叙述查询系统目录.

SELECT  tabname,owner FROM systables WHERE tabid >99;

SELECT  username FROM sysusers WHERE usertyp = ' D'

 

 

-314    表格 '表格名称' 目前正在使用中.

 

此叙述执行时因表格正为其他用户所使用, 而无法完成动作 (例如移除表格).

请稍后再试着执行一次. 若要确定没有表格正在使用, 请以 DATABASE

EXCLUSIVE 开启数据库.

 

 

-315    没有建立索引访问权限.

 

此叙述尝试建立表格的索引. 然而, 不是您没有被授予此表格的 INDEX 权限,

就是表格本身是概观文件或同义字. 如果指名的表格实际上是表格的话, 请联络

表格的拥有者或数据库管理员 (请参阅错误 -313 的讨论) 并要求授予此权限.

 

 

-316    索引 '索引名称' 已经存在于数据库中.

 

此叙述尝试以所示的 '索引名称' 建立索引, 但是该名称的索引已经存在. 在单

一数据库中, 索引名称必须是唯一的. (在符合 ANSI 标准的数据库中, 建立索

引的用户名称可以附加到索引名称, 所以针对一个使用者可能存在一个所指

名称的索引.) 请检查名称的拼法; 如果此名称是您想要的, 而且确定它不应该

存在, 则请确定目前使用的是您想要的数据库. 您可以藉由如下的叙述联结

systables 和 sysindexes 来检查所有索引以及它们拥有者的名称:

SELECT                  T.tabname,

FROM                            systables T, sysindexes I

WHERE                    I.tabid =T.tabid

AND                             T.tabid >99

 

 

-317    在每个 UNION 要件中必须要有相同的选取栏数目.

 

所有在 union 中产生的列必须要有相同的格式. 这表示在 union 中的每个

SELECT 叙述必须选取相同的栏数. 在此 union 中, 第二个或是后来的 SELECT

叙述并未列出与先前叙述相同的栏数. 请检查整个的联集并确定所有的选取清单

在数目和数据类型上都是相似的. 如果其中一叙述没有适当的栏, 请在该位置

指定适当类型的文字值. 举例来说, 在您需要匹配值的字段置, 请指定零.

 

 

-318    与指定之登录文件名相同的档案已经存在.

 

您在 WITH LOG IN 子句中指定的交易日志文件不能够是已经存在的. 数据库

服务器必须启动一个新的日志文件文件; 而不能将登录数据附加至旧的日志文件文件中.

存在的日志文件包含了可能很重要的回复信息, 所以它将不只是简单地使一个存

在的档案成为空档案而已. 若要开始登录从前没有被登录过的数据库; 请锁定

数据库; 将所有的数据库目录拷贝至备份媒体中; 使用 START 指令来指名

一个新的档案. 其后若要制作部份的备存: 请锁定数据库; 将日志文件拷贝至

备份媒体中并储存为完整的备存; 将日志文件清除或加以更名; 再使用 START

指令.

 

 

-319    索引不存在.

 

此叙述所参考的索引不存在. 请复查索引名称的拼字; 如果无误,且您确定它该

存在, 请确定您使用的是正确数据库. 在遵循 ANSI 的数据库中, 您所未拥有的

索引必须符合其拥有者名称的规定. 请参考错误 -316 中的说明, 以了解检查所

有索引的名称及拥有者的方式.

 

 

-320    不是索引拥有者.

 

此叙述尝试执行只能由索引拥有者或由拥有数据库管理员权限完成的动作,如移

除索引. 请确定叙述指名的是您想要的索引. 如果是的话, 您就必须知道其拥有

者或 DBA 来执行此叙述. 请参阅错误 -316 的讨论来了解列出索引名称和拥有

者的方法.

 

 

-321    不能以累积栏来群组.

 

在此叙述中的 GROUP BY 子句用到累积函数作为选取值. 这个动作没有支持.

(使用群组形成之后才能运算的值来做为群组列的情形并不合理.) 您可以依

栏中的值或包含栏的表达式将列加以群组化, 但是表达式不能包括累积函数.

请检查 GROUP BY 子句, 将它与选取清单加以比较. 可能在 GROUP BY 子句中

其中一个栏号码是错误的.

 

 

-322    不能在概观档 '概观档名称' 中变更, 更名, 或建立触发器.

 

您只能在表格中建立触发器. 请考虑在产生概观文件的表格中建立触发器, 或是将

概观档 '概观文件名称' 以表格方式建立, 再于其上建立一个触发器.

如果您为概观档发出一个 START VIOLATIONS TABLE 叙述或 STOP VIOLATIONS

TABLE 叙述时, 也可能会收到这个讯息. 您必须在这些叙述中指定基底表格的名称.

 

 

-323    不能在暂时表格中授予访问权限.

 

这个 GRANT 叙述指名一个暂时档. 这个动作并不支持; 权限只有在永久表格中

才会记录. 因为是暂时表格不会记录在系统目录中, 所以没有地方能够记录它们

的权限. 只有建立暂时表格的人才可以存取.

 

 

-324    栏 '栏名称' 含糊不清.

 

栏名称出现在本查询的 FROM 子句所列出的数个表格中. 数据库服务器需要被告

知要使用那一个字段. 请修正叙述, 使得不论此名称出现在查询中的何处, 它会

将表格名称置于前缀:  '表格-名称' . '栏' . 如果如此而使得叙述显得累赘,

请在 FROM 子句中给表格一个较短的别名 (请参阅错误 -316 讨论的范例).

 

 

-325    文件名必须指定完整的路径名称.

 

当您尝试使用 WITH LOG IN 子句建立表格, 而且您在日志文件中并没有指定完整

的路径时发生这个错误. 如果您使用 INFORMIX-SE 来建立数据库登录, 而且并

没有指定登录档案的完整路径时也会发生此错误. 请确定您指定了日志文件所在

的完整路径名称, 包括日志文件名称.

 

 

-326    参考限制的被参考栏太多.

 

指定的参考限制超过了 16 个栏 (或是在 INFORMIX-SE 中超过 8 个).

 

 

-327    无法解除交易内表格 '表格-名称' 的锁定.

 

UNLOCK TABLE 叙述在交易中并不允许, 也就是说, 跟着 BEGIN WORK 的执行.

当您在使用交易时仍然可以使用 LOCK TABLE , 但是表格会在交易结束时自动

解除锁定, 因为所有的锁定在交易结束后会解除. 在符合 ANSI 标准的数据库中,

没有使用BEGIN WORK, 交易持续生效, 而且从未使用 UNLOCK TABLE 叙述.

 

 

-328    栏 '栏-名称' 已经存在于表格中.

 

此叙述尝试以所示的栏建立字段, 但是巳有一个具有该名称的栏存在. 请检查

名称的拼法; 如果它正是您想要的, 则表格不会依照您所要的方式来安排. 您

可以藉由查询 syscolumns 来检查表格中所有栏的名称. 请提供 '表格-名称' 给

下列的查询.

SELEC Tcolname, colno FROM syscolumns C,  systables T

WHERE C.tabid = T.tabid AND T.tabname  =  `table-name'

您能够使用 RENAME COLUMN 来改变栏名称.

 

 

-329    没有发现数据库或没有系统访问权限.

 

您尝试开启的数据库在数据库服务器中找不到. 请检查名称的拼法是否正确. 可

能数据库位于不同的数据库服务器 (或网络系统) 而且您已经省略指定数据库名

称所属的服务器名称 (或 site 名称). 如果您确定数据库应该存在的话, 下一个步

骤应该视您正在使用的数据库服务器而定.

如果您正在使用 INFORMIX-SE, 可见的数据库是具有 dbname.dbs 名称型式

的目录. 您必须能够读取或写入这些数据库. 数据库服务器首先会查看目前的

工作目录, 然后是在 DBPATH 环境变量中的每个目录. 这个错误最常见的原因

是 DBPATH 环境变量的设定不正确或是没有设定.

如果您正在使用 INFORMIX-OnLine Dynamic Server, 数据库名称并不存在.

在某些环境中, 有可能会有两个或更多的 OnLine instance 同时执行, 而且每个

instance 有其本身的数据库集. 在 6.0 和更新的版本, INFORMIXSERVER 环境变量

值会决定您要使用那一个 INFORMIX-OnLine Dynamic Server instance. 而对 5.01

和更早的版本来说, TBCONFIG 环境变量会指出决定您将要使用的 INFORMIX-

OnLine instance 的组态档案. 如果您认为您使用的两个 OnLine instance 其中一个

有错误的话, 请找 OnLine 管理员.

 

 

-330    不能建立数据库.

 

可能是您尝试建立的数据库与已经存在之数据库名称相同; 如果遇到此种情况,

请选择不同的名称. 否则, 请检查伴随的 ISAM 错误码以获得更多有关错误产生

的详细信息. 可能是因为磁盘空间不足或是档案访问权限的问题.

 

 

-331    不能移除数据库目录.

 

当数据库服务器在执行 DROP DATABASE 指令时, 数据库服务器已经移除所

有来自 dbname.dbs 目录中与数据库有关的档案, 并且尝试移除目录本身, 但是

发生错误. 请检查伴随的 ISAM 错误码以获得更多有关错误产生的详细信息. 最

有可能的原因是您或其他的用户在相同的目录中建立了非数据库的档案, 而此

目录则因为不是空目录而无法移除.

 

 

-332    不能存取稽核追踪名称信息.

 

在读取稽核追踪档案时发生错误. 请重新执行最近的叙述; 如果错误再度发生,

表示稽核追踪档案已经毁损. 如此您必须要移除然后重新启动稽核.

 

 

-333    稽核追踪档案已经以不同名称的形式存在.

 

在开始新的稽核追踪之前, 您必须将已存在的稽核追踪移除. 请使用 DROP

AUDIT 叙述.

 

 

-334    不能建立稽核追踪.

 

某些问题妨碍数据库服务器初始稽核追踪档案. 请确定您在档案中指定了完整,

正确的路径名称. 请查看操作系统的错误讯息, 可以提供您更多的信息. 常见

的问题包括磁盘空间不足和档案访问权限的问题.

 

 

-335    指定的表格中没有稽核追踪.

 

此叙述需要稽核追踪来运作, 而表格中并没有现有的稽核追踪. 若不是稽核追踪

从来没有启始就是它已经移除. 请确定您所指定的表格. 在回复的情况中

(叙述为 RECOVER TABLE), 请确定表格刚刚从备份拷贝中回存. 如果情况如

此的话, 则在备份制作时, 表格并没有稽核追踪. 如果稽核追踪会在稍后指定的话,

在备份和稽核开始之间会留下一个未知点, 在此期间可能会有未稽核的更新.

 

 

-336    不能建立或移除在暂时表格 '表格名称' 中的稽核.

 

暂时的表格无法稽核. 稽核追踪的指令不会接受暂时表格的名称. 如果您不想

要指名暂时的表格, 请检查所示之表格名称的拼法是否正确. 请参阅错误 -313

的讨论以获得在数据库中显示全部永久表格名称的方法.

 

 

-337    不能建立在暂时表格 '表格名称' 上的概观档.

 

概观文件只能在永久的表格上建立. 在此最后叙述中定义概观档之 SELECT 叙述中

包含了暂时表格的名称 '表格-名称' . 如果您不想要指名暂时的表格, 请检查所

示的表格名称的拼法是否正确. 请参阅错误 -313 的讨论, 了解在数据库中显示

全部永久表格的名称的方法.

 

 

-338    不能移除稽核追踪.

 

在执行 DROP AUDIT 叙述期间发生一些预料外的错误. 请检查伴随的 ISAM 错误

码来获得更多有关错误产生的详细信息.

 

 

-339    稽核追踪文件名必须在完整的目录路径中提供.

 

在 CREATE AUDIT 叙述中指定的稽核追踪档案必须提供完整的目录路径. 理由是

因为它不必出现在任何特殊的目录中, 所以数据库服务器无法使用现有的目录或

DBPATH 变量来搜寻它.

 

 

-340    不能开启稽核追踪档案.

 

数据库服务器需要为此表格使用稽核追踪档案, 但被一个不预期的原因阻碍了.

可能的原因包括硬件错误, 档案访问权限的问题, 或是档案意外地清除. 请查

看操作系统的错误讯息, 或许可以提供您更多的信息.

 

 

-341    不能从稽核追踪档案中读取列.

 

在读取此表格的稽核追踪时, 数据库服务器遭遇到预料外的错误. 可能的原因

包括档案访问权限的问题以及硬件错误. 请查看操作系统的错误讯息, 或许

可以提供您更多的信息.

 

 

-342    远程主机无法执行叙述.

 

此叙述传送至不同系统的数据库服务器来执行. 然而, 该数据库服务器并不支持

所要的功能, 原因可能是数据库服务器为较早的版本.

 

 

-343    来自稽核追踪的列被新增至与预期不同的位置.

 

当从稽核追踪中重新建构表格时, 数据库服务器发现在目前插入列的位置和

插入初次完成时, 稽核追踪内记录的位置之间, 有不一致的情形. 这种情况可

能有两种原因: 不是稽核追踪档案已经毁损, 就是其他的稽核追踪档案不完整,

遗失某些变更的记录. 表格无法回复原状. 在确定表格已经回存到稽核追踪档

建立时的状态, 请再试着操作一次. 如果错误重现, 请以其他方法重新建立表格.

 

 

-344    不能删除列 - 表格中的列与稽核追踪中的列不符.

 

当从稽核追踪中重新建构表格时, 数据库服务器发现到在目前删除列的位置和

删除初次完成时, 稽核追踪内记录的位置之间, 有不一致的情形. 这种情况可

能有两种原因: 不是稽核追踪档案已经毁损, 就是其他的稽核追踪档案不完整,

遗失某些变更的记录. 表格无法回复原状. 在确定表格已经回存到稽核档案建

立时的状态, 请再试着操作一次. 如果错误重现, 请以其他方法重新建立表格.

 

 

-345    无法更新列 - 表格中的列与稽核追踪中的列不符.

 

当从稽核追踪中重新建构表格时, 数据库服务器发现到在目前更新列的内容和

更新初次完成时, 稽核追踪内记录的内容之间, 有不一致的情形. 这种情况可

能有两种原因: 不是稽核追踪档案已经毁损, 就是其他的稽核追踪档案不完整,

遗失某些变更的记录. 表格无法回复原状. 在确定表格在稽核追踪建立时, 已

经回存为原来正确的状态之后, 请再试着操作一次. 如果错误重现, 请以其他

方法重新建立表格.

 

 

-346    不能更新表格中的列.

 

在处理 UPDATE 时, 数据库服务器接收到预料外的错误. 请检查伴随的 ISAM

错误码以获得有关错误产生更详细的信息. 可能的原因包括硬件错误和锁定冲突.

 

 

-347    不能开启排他存取的表格.

 

数据库服务器无法完成 LOCK TABLE 叙述, 或是其他改变表格定义所必须完成

的隐含 LOCK TABLE (例如 ALTER TABLE, RENAME, 或 CREATE INDEX) .

请检查伴随的 ISAM 错误码以获得有关错误产生的详细信息. 可能的原因包括

锁定冲突, 完整的锁定表格, 或低层级的主机操作系统锁定装置问题.

 

 

-348    不能从表格中读取列.

 

数据库服务器在尝试从表格中取得列时, 接收到预料外的错误. 请检查伴随的

ISAM 错误码以获得有关错误产生原因的详细信息. 可能的原因包括硬件错

误与锁定冲突.

 

 

-349    数据库尚未选取.

 

无法执行此叙述, 原因是没有现有的数据库. 不是目前的数据库尚未建立, 就是

现有数据库已经用 CLOSE DATABASE 叙述加以关闭. 您可以藉由执行

DATABASE 或 CREATE DATABASE 叙述来建立现有的数据库.

 

 

-350    索引已经存在于栏中.

 

CREATE INDEX 叙述无法执行, 原因是已经有索引存在于相同的栏或字段组合中.

最多只能有两个索引存在于字段组合中, 一个是升幂而另一个是降序. 您可以藉由

联结 sysindexes 和 systables 来显示特定表格上的索引. 请提供 '表格-名称'

给下列的叙述.

SELECT  * FROM sysindexes, systables

WHERE sysindexes.tabid = systables.tabid

AND systables.tabname = `table-name'

sysindexes 表格并不是正规化的 ("部份" 栏是重复的群组), 所以并没有简单

SELECT 叙述会传回索引中所有栏名称.

 

 

-351    数据库包含其他用户所拥有的表格.

 

DROP DATABASE 或 UPDATE STATISTICS 指令无法执行的理由:可能会

破坏其他的工作. 若要移除此数据库, 您必须先移除其他使用者所拥有的全部

表格. 方法是您必须拥有数据库管理员权限. 请参阅错误 -313 的讨论以了解

列出全部表格及其拥有人名称的方法.

 

 

-352    找不到栏 '栏-名称' .

 

在 CREATE INDEX 叙述中指名的栏 (或其中一栏) 不存在. 请检查叙述中所有

栏的拚法. 请参阅错误 -328 的讨论, 列出表格中所有栏名称的方法.

 

 

-353    在授予/废止权限时没有指定表格或检视.

 

此叙述指定表格层级权限 (ALTER, DELETE, INDEX, INSERT, SELECT,

UPDATE, 和 ALL) 其中一个, 但是并没有指定权限所应用的表格. 当授予或

废止数据库层级权限 (CONNECT, DBA, RESOURCE) 时, 您不可以指名表格,

但是当授予或废止表格层级权限时则必须要指名表格.

 

 

-354    不正确的数据库或光标名称格式.

 

这个叙述包含不适当格式数据库或光标名称. 若这个叙述是程序中的一部分, 这个名称

可能是以主机变量来传送. 针对 INFORMIX-SE而言, 数据库名称应该不超过 10 个字符

(在某些主机操作系统, 则更少), 其他的 Informix 数据库服务器的数据库名称则少于

18 个字符. 光标名称不能超过 18个字符.

 

数据库和光标名称两者都必须以字母开始, 而且其中只包含字母、数字和加底线

的字母. 对6.0 及其以后的版本, 数据库和光标名称的开始字母, 可以是底线.

 

DOS 系统中, 文件名最多可为 8 个字符加上 3 个字符的扩展名.

 

 

-355    不能将表格的档案加以更名.

 

RENAME 叙述无法完成, 因为数据库服务器得到预料外的错误. 请检查伴随的

ISAM 错误码以获得关于错误的更详细信息. 可能的原因包括硬件错误和档案存

取权限的问题.

 

 

-356    参考和被参考栏的数据类型不符.

 

在子限制中栏的数据类型, 必须与在母限制中栏的数据类型相同.

 

 

-357    概观档 '概观档名称' 的从属表格已经被变更.

 

概观档定义后, 其所属的表格已经变更过.此变更将用在概观档中的字段移除或

更名. 因而概观档不能够再使用. 请将概观档移除并重新定义以使用现有的纲要.

 

 

-358    必须在 CREATE, START 或 ROLLFORWARD 之前关闭现有的数据库.

 

这些叙述选择了一个新的现有数据库, 但是您必须先关闭目前的数据库. 请在

此叙述之前使用 CLOSE DATABASE 叙述.

 

 

-359    不能移除现有的数据库.

 

目前开启的数据库无法移除. 请先使用 CLOSE DATABASE 叙述; 然后您就可以

将它移除.

 

 

-360    无法修改在子查询中使用的表格或概观文件.

 

UPDATE 或 INSERT 叙述使用自子查询中相同表格所取得的数据. 这个动作不

允许, 因为可能会有进入不会停止的循环之危险. 请先选取输入至暂时表格的资

料; 然后在 UPDATE 或 INSERT 叙述中使用暂时表格.

 

 

-361    栏的尺寸太大.

 

此内部错误反映数据库服务器和应用程序之间的通讯问题. 但是应该不会显示

出来. 如果错误重现, 请记录下全部的环境并联络 Informix 技术支持部门.

 

 

-362    只能有一字段的 serial/serial8 类型.

 

表格最多只能有一字段的 SERIAL 类型以及一字段的 SERIAL8 类型. 您正试

图增加类型 SERIAL 或 SERIAL8 的第二字段, 或者正建立含任一类型数字段

的表格. 如果您想要有外键 (也就是说, 参考不同表格中的 SERIAL 或

SERIAL8 字段), 此表格中这字段的数据类型应为 INTEGER 或 INTEGER8.

 

 

-363    CURSOR 不是在 SELECT 叙述中.

 

在此叙述中 (可能是 OPEN) 指名的光标已经与准备的叙述 (不是 SELECT) 结合.

请检查程序的逻辑, 特别是光标的 DECLARE, 在其中指定的叙述 id, 以及设定该

叙述的 PREPARE. 如果想要以 INSERT 叙述使用光标的话, 只有当 INSERT

写在 DECLARE 中才行. 如果想要执行某些 SQL 叙述, 可以直接以 EXECUTE

来完成, 而不必间接地透过光标.

当您尝试将光标与 SELECT INTO TEMP 叙述结合时也会传回此错误. 因为

INTO TEMP 子句的关系, SELECT 无法传回列, 也不能以光标使用.

 

 

-364    栏  '栏-名称'  没有作 UPDATE OF 宣告.

 

UPDATE...WHERE CURRENT OF  '光标名称' 叙述参照的字段, 至少有一个并没有

出现在宣告光标的 DECLARE 叙述中的 FOR UPDATE OF 子句, 因为特定栏在游

标宣告中列出, 所以数据库服务器将不会允许更新其他的栏. 请检查宣告以及此光标

的使用. 所指出的栏和其他栏或许应该加入宣告中, 或是应该移除 OF 子句, 让游标

可以更新表格中的任何栏.

 

 

-365    FOR UPDATE 的游标必须在简单 SELECT 上.

 

在此叙述中 (可能是 OPEN) 指名的光标是以 FOR UPDATE 子句宣告的. 然而, 它

已经与下列的 SELECT 叙述相结合: 联结两个或多个表格的 SELECT 叙述, 使用

UNIQUE, DISTINCT, ORDER BY, GROUP BY, 或 UNION 的叙述, 或是选取计算值

的 SELECT 叙述. 此种 SELECT 叙述无法在更新中使用; 您没有办法将新的资料

放回多个表格中. 请检查游标的宣告. 如果它宣告 FOR 叙述 id, 请同时检查设定

该叙述的 PREPARE 叙述. 您可能需要两个光标, 一个作为一般查询使用, 而另一

个则特别作为更新之用.

 

 

-366    范围超出了指定之精准度的最大值.

 

在此叙述中, DECIMAL 或 MONEY 数据类型的精准度或范围有问题. 请将这些类

型的使用全部加以检查. 第一个应该宣告为 DECIMAL(p) 或 DECIMAL(p,s). 其中

 p (precision, 精准度, 数字的总数) 是在 1 和 32 之间. 而 s (scale, 延展,

小数点右边的数值) 则不大于 p. MONEY 类型的规则相同.

 

 

-367    无法计算字符栏的总数和平均.

 

此叙述将 SUM 或 AVG 函数运用在字符数据型态 (CHAR 或 VARCHAR) 的栏上.

如果您不想要计算字符字符串的总数或平均, 请检查表格定义的栏名称之拼法.如

果字符栏实际上包含在字符型式的值, 您可以让数据库服务器执行自动转换

(4.0 和 4.0 以上的版本), 即将栏名称用在括号内的表达式 (colum+0), 取代

直接在函数中运算栏名称.

 

 

-368    不兼容的 sqlexec 模块.

 

数据库服务器的版本与应用程序中数据库库存例程的版本并不一致. 在程序执行

之前必须解决这个问题. 数据库服务器是透过 SQLEXEC 环境变量 (数据库伺服

器 6.0 之前的版本) 所选取的. 它包含了数据库服务器码的完整路径名称, 通常

名称为 sqlexec 或 sqlturbo (数据库服务器 6.0 之前的版本). 在编译程序时会选

择与程序链接的存取例程会. 如果您正在执行的程序是由 Informix 所提供的,

则它或其他 Informix 产品的安装可能不正确.

 

 

-369    序号不正确. 请咨询您的安装说明.

 

在 Informix 产品的安装中有一些错误. 请检查 SQLEXEC 环境变量中的值 (数据

库服务器 6.0 之前的版本) 以及 INFORMIXDIR 环境变量; 然后请询问安装此软件

的人员, 并查看安装的说明资料.

 

 

-370    不能移除最后的栏.

 

ALTER TABLE DROP 叙述将会从表格中移除每一个栏. 至少有一栏必须要加以保

存. 请修正叙述以留下一栏. 或者如果您不想要全部的表格, 请使用 DROP TABLE

将它移除.

 

 

-371    无法在有重复数据的栏上建立唯一的索引.

 

CREATE UNIQUE INDEX 叙述无法完成, 因为栏 (或几个栏) 包含了一或多个重

复列. 您可以建立普通的索引, 接受重复值, 或者也可以修改表格以移除重复的

部份. 若要获得单一栏中重复值的清单, 首先要建立普通的索引. 然后使用类似

下列的 SELECT 叙述, 填入表格和栏名称.

SELECT column FROM table main WHERE <

(       SELECT COUNT(*) FROM table sub

        WHERE main.column = sub.column )

亦可以延伸来处理使用 AND 的多栏的例子.

 

 

-372    稽核追踪开启时无法变更表格.

 

一旦稽核追踪已经为表格所启动, 表格就不能加以变更. 如果必须要变更表格,

请执行下列的动作. 将表格拷贝至备份媒体中. 使用 DROP AUDIT 以删除稽核追

踪. 删除稽核追踪档案. 变更名称. 再次将表格拷贝至备份媒体中. 最后使用

CREATE AUDIT 来启动新的稽核追踪. 如果在变更表格时产生失败, 第一个备份

则需要回存表格 (如果为大型表格的话则会是冗长而且磁盘密集的程序). 如果

表格在稍后必须要回复, 则需要第二个备份. 因为新的稽核追踪必须应用到有相

同栏设计规划备份之上.

 

 

-373    DBPATH 太长.

 

当数据库服务器尝试使用 DBPATH 环境变量找到数据库时, 所建构的完整路径

字符串长度超过了 80 个字符的限制. 这是在一个完整的数据库目录路径上的限制,

从开始的斜线或倒斜线一直到 .dbs 的字尾为止. 您必须要在目录阶层中将您的

数据库为位置提高, 以便于使用它们. (消息正文会容易使人产生误解; 在

DBPATH 内容的总长度上并没有特定的限制.)

 

 

-374    UNION 仅能使用 ORDER BY 子句中的字段号码.

 

此查询同时有 UNION 和 ORDER BY 子句. 在 union 查询中, 可能有数个选取叙

述每个选取叙述选取栏的名称并不一定相同, 您可能无法在 ORDER BY 子句中使

用栏名称. 反而您必须使用字段置号码来代替, 1 表示第一个选取栏, 2 表示第

二个选取栏, 依此类推. 请重新编写查询, 只使用 ORDER BY 子句中的号码.

 

 

-375    无法为交易建立日志文件.

 

在数据库服务器尝试执行 START 指令时, 发生未预期的建立交易日志文件错误.

请检查伴随的 ISAM 错误码了解错误产生原因的详细信息. 典型的原因包括

磁盘空间不足, 档案访问权限的问题, 或是开启档案数量的限制.

 

 

-376    登录档案已经存在.

 

您在 WITH LOG IN 子句中指定的交易日志文件必须不存在. 数据库服务器必须

启动日志文件的更新; 它没有办法将日志文件附加至旧日志文件中. 一个存在

的日志文件可能包含很重要的回复信息, 所以它不会只是使存在的档案变空而已.

若要制作完整的备存: 请锁定数据库; 将全部的数据库目录拷贝至备份媒体; 清

除日志文件 (已不再需要); 使用 START DATABASE 指令. 若要制作部份备份: 请

锁定数据库; 将日志文件拷贝至备份媒体中并以完整备份加以储存; 清除或更名

日志文件; 使用 START DATABASE 指令.

 

 

-377    关闭数据库之前必须终止交易.

 

此叙述 (DATABASE, CREATE DATABASE, 或 CLOSE DATABASE) 在现有的

交易结束之后才能执行. 请使用 COMMIT WORK 或 ROLLBACK WORK. 然后资

料库才可以关闭.

 

 

-378    记录目前被其他的用户锁定.

 

此叙述需要的表格列无法存取, 原因是它已经被锁定. 请检查伴随的 ISAM 错误

码以获得更多详细的信息; 错误码可能为 -107, -113, -134, -143, -144, 或 -154.

每个错误码代表您的程序和其他用户的程序之间些微不同的关系. 您可

以用 SET LOCK MODE TO WAIT 来避免多数 (但不是全部) 错误的出现.

对于 4.1 版本以前的数据库服务器, 此错误讯息仅伴随 UPDATE 以及 DELETE

WHERE CURRENT OF 叙述. 在 6.0 以后的版本, 就不再使用此错误讯息.

 

 

-379    不能废止栏中的权限.

 

在 GRANT 叙述中, 您可以授予 UPDATE 或 SELECT 的权限给特定的栏. 然而,

REVOKE 叙述只接受权限类型的关键词; 您无法废止对于指定栏的存取. 如果您

希望改变特定使用者允许使用的栏, 首先您必须 REVOKE 全部的权限, 然后在

新的栏清单中 GRANT 权限.

 

 

-380    不能消除登录档案.

 

尝试初始交易日志文件时, 数据库服务器接收到未预期到的错误. 请检查伴随的

ISAM 错误码以了解错误产生的原因与更多详细信息. 典型的原因包括硬件错误

以及档案访问权限的问题.

 

 

-381    无法授予之前曾经授予您相同权限的人.

 

您尝试授予的权限是最初授予您的 WITH GRANT OPTION 权限. 做出该项授予的

用户位于目前叙述的用户清单之中. 为了安全起见, 您不可以做出互惠的授

予. 请重新编写叙述, 去掉原先的授予者名称. 若要查看您无法授予的使用者清

单, 请以下列叙述查询 systabauth:

SELECT grantor FROM systabauth WHERE grantee = USER

 

 

-382    相同的字段数目必须指定给概观档及选取子句.

 

在 VIEW 叙述中, 您列出了概观档的栏名称. 然而, 它们的数目与概观档的

SELECT 叙述中的字段数目并不相同. 请检查两个列表中的标点符号并确定

您已提供了选取列表中每个项目的名称.

 

 

-383    需在检视定义中指定检视栏.

 

在 "View" 叙述中, 你未针对栏列出特定名称. 当SELECT 只选择简单、已命名

的字段时, 才可以执行这个动作. 然而, 这里的 SELECT叙述选取一个或更多的

表达式. 你必须提供名称到检视名称后面括号内清单中的栏. 因为你无法提供名

称给部分的栏, 必须列出所有的名称.

 

 

-384    无法修改非简单概观档.

 

此叙述尝试修改 (插入, 删除, 或更新) 概观档中的列. 然而此概观档是无法修改

的. 因为概观档是根据联结两个或多个表格的 SELECT 叙述, 或是根据选取计算

值或文字值的 SELECT 叙述建立的. (即使选取了某些计算值, 您可以从自单一表格

选取的概观档来 DELETE.) 您必须要引导叙述到概观档实际上参照的表格.

 

 

-385    数据值超出范围.

 

此叙述尝试将数据放进定义为 WITH CHECK OPTION 的概观档中, 所以新的数据

必须要满足概观档中 WHERE 子句的测试. 然而, 在此现有叙述中的一或多个资

料值并不符合测试, 所以变更没有执行. 回复现有的交易. 若要查看新的资料

必须满足何种测试, 以如下的叙述显示概观文件定义:

SELECT                  seqno, viewtext FROM sysviews, systables

WHERE                   systables.tabname = ' viewname'

AND                             systables.tabid = sysviews.tabid

ORDER BY                        seqno

 

 

-386    栏包含 null 值.

 

ALTER TABLE 叙述包含了指定 NOT NULL 属性给存在字段的 MODIFY 子句.

然而该栏已经包含了一或多个的 null 值. 必须要等到 null 值删除或一些非

null 值更新后, 才能完成修改.

 

 

-387    没有连接权限.

 

您无法存取在此叙述中需要的数据库, 原因是您没有被授予 CONNECT 的权限.

请联络对该数据库具有数据库管理员权限的人员, 并要求其授予对数据库的

CONNECT 权限.

 

 

-388    没有资源权限.

 

如果您使用 CREATE TABLE, CREATE INDEX 或 CREATE PROCEDURE 叙述, 将无法

执行, 因为在本数据库中您的帐户不具备 RESOURCE 权限. 您必须拥有 RESOURCE

权限才能建立永久的表格及其上的索引, 以及程序.

如果您发出了 SET 叙述, START VIOLATIONS TABLE 叙述或 STOP VIOLATIONS

TABLE 叙述, 这些叙述将无法执行, 因为您的帐户在本数据库中不具备 RESOURCE

权限. 您必须具备 RESOURCE 权限, 才能为目前数据库表格定义的限制, 触发器

或索引执行 SET 叙述. 您也需要 RESOURCE 权限才能在目前的数据库的基准表

格中执行 START VIOLATIONS TABLE 或 STOP VIOLATIONS TABLE 叙述.

若想复原此项错误, 请向具备本数据库 DBA 权限的人员查询, 并要求授予数据

库的 RESOURCE 权限.

 

 

-389    没有 DBA 权限.

 

此叙述无法执行, 因为在此数据库中您的帐户没有授予 DBA 权限. 请联络

对数据库具有 DBA 权限的人员, 并要求其授予您对数据库的 DBA 权限 (或仅要

求为您执行此叙述).

 

 

-390    同义字已经用来作为表格名称或同义字.

 

CREATE SYNONYM 叙述指定名称的同义字正在使用中. 若要查看目前定义的所有

同义字和表格名称, 请以如下的叙述查询 systables:

SELECT tabname, owner FROM systables WHERE tabid > 99

 

 

-391    无法将 null 插入栏的 '栏-名称' .

 

此叙述尝试将 null 值放进所指的栏中. 然而, 该栏已经定义为 NOT NULL.

请回复现有的交易. 如果这是一个程序的话, 请检查表格的定义, 并将程序的

逻辑改变为不使用 null 值 (对于无法接受 null 值的栏而言).

 

 

-392    系统错误 - 遭遇预料外的 null 指标.

 

此为不应该发生的内部错误. 如果错误再度发生, 请记录下全部的情况并联络

Informix 技术支持部门.

 

 

-393    where 子句中的情况产生两边的外部联接.

 

此查询需要外部的联结, 但是在 WHERE 子句中的一或多个条件妨碍了主要从属

关联. 请检查查询, 确定与两个表格间相关的每种条件是真的需要的.

 

 

-394    找不到概观档的 '概观档-名称' .

 

指名的概观档不存在, 无法将其移除. 若要查看存在概观档的名称, 请以如下

的叙述查询 systables:

SELECT tabname FROM systables WHERE tabtype = 'V'

 

 

-395    where 子句包含了外部的 cartesian 乘积.

 

此查询需要外部的联结, 但是 WHERE 子句的写法意谓将会为主要表格的每个列

选择从属表格中所有的列, 如此将导致相当大的输出. 请检查查询, 以确定至少

有一个条件与查询中每个保留的有用表格对有关.

 

 

-396    在巢状的外部表格和保存的表格之间有不合法的联结.

 

此查询需要外部的联结, 但是 WHERE 子句中条件式所引用的巢状从属表格及保存

表格并不是直接的 parent. 并没有支持此条件式. 请检查查询, 并确定条件式相关

的两个表格是保有表格和其直接的从属表格.

 

 

-397    系统目录 table-name 毁损.

 

这个内部错误不应该发生. 数据库服务器遭遇到一个或多个系统目录表格违反

整体限制. 针对 Informix 活动服务器或 INFORMIX-OnLine Dynamic Server, 执

行tbcheck、oncheck 或 oninit 工具, 或者针对 INFORMIX-SE, 执行bcheck

或 secheck 工具. 若错误再度发生, 请记下所有的情况, 并洽询 Informix 技术

支持部门.

 

 

-398    光标作业必须在交易之内.

 

此错误讯息是由于尝试使用 UPDATE 或 DELETE WHERE CURRENT OF 叙述

所产生的. 此叙述要透过光标来修改表格. 然而, 此数据库使用的是交易登录.

在这种情况时, 透过光标完成的修改必须放置在交易的范围之内.

请检查程序的逻辑并确定它在此叙述之前先执行了 BEGIN WORK 叙述, 而且它在

某些合理的点上结束交易. 如果程序必须与使用交易以及不使用交易的数据库运

作的话, 您可以让程序检查 SQL 通讯区域的 sqlwarn 数组的第二要件. 若资料

库有交易登录的话, 此要件会在 DATABASE 叙述之后出现一个 W, 若没有的话则

为空白. 

 

 

-399    无法存取登录档案.

 

此查询参照名为 syslog 的表格. 即使 systables 目录中的列的 tabname 栏有

syslog. 它仅是一个可以在交易日志文件中方便储存路径名称的位置. 在

INFORMIX-SE 之下, 有登录的数据库可能不会有称为 syslog 的表格.

(通常您应该避免使用以 sys 字母开始的表格名称, 但是 syslog 则是完全不

允许.)

 

 

-400    尝试在未开启的游标上取得.

 

FETCH 叙述指名从未开启或是已经关闭的光标. 请检查程序逻辑并确定它

会在此之前开启游标, 而不会意外地将它关闭. 要注意的是除非游标宣告

WITH HOLD, 否则 COMMIT WORK 或 ROLLBACK WORK 会自动地将

它加以关闭.

 

 

-401    尝试在 NULL 游标上的取得.

 

FETCH 叙述传送不正确或为 null 指针的光标数据结构. 可能是由于光标已经

以 FREE 叙述加以释放, 或者可能光标数据结构已经在内存中覆写.

此错误码不会被任何 5.0 或之后版本的数据库服务器传回. 请参看错误 -267

和 -404.

 

 

-402    主机变量的地址为 NULL.

 

检查程序建构 sqlda 和相关数据结构的方式; 可能是程序设定 null 指针. 此错

误的发生, 也可能是因为使用列或集合主机变量时, 未执行必需的ALLOCATE

叙述.

 

若此程序是用 INFORMIX-4GL语言或另一种语言开发, 在这些语言中,  sqlda并不

是直接由程序来建构, 或者如果这个叙述只是按照名称来参考主机变量, 这个错

误应该不会发生. 若错误再度发生, 请记下所有的情况, 并洽询 Informix 技术

支持部门.

 

 

-403    收到列的大小与预期大小不符.

 

这个内部错误表示数据库服务器和呼叫它的函数馆函数之间的通讯问题. 检查

你的程序与使用中的数据库服务器是否为相同的软件层级. 若此错误再度发生,

请记下所有的情况, 并洽询Informix 技术支持部门.

 

 

-404    找不到游标或叙述.

 

你可能使用叙述, 来替光标命名, 该光标已被 FREE 叙述所释出. 再次查看程

式的逻辑并检查指定的光标是否已加以宣告与开启, 并且在执行此叙述之前, 该游

标尚未被释出.

 

若错误发生在指定变量的指令, 而不是指定光标的指令, 在你执行这个叙述前,

这个叙述尚未准备就绪.

 

若光标或叙述是因为与服务器的连接不存在或遗漏, 这个错误亦可能发生.

 

 

 

-404    找不到游标或叙述.

 

你可能使用叙述, 来替光标命名, 该光标已被 FREE 叙述所释出. 再次查看程

式的逻辑并检查指定的光标是否已加以宣告与开启, 并且在执行此叙述之前, 该游

标尚未被释出.

 

若错误发生在指定变量的指令, 而不是指定光标的指令, 在你执行这个叙述前,

这个叙述尚未准备就绪.

 

若光标或叙述是因为与服务器的连接不存在或遗漏, 这个错误亦可能发生.

 

 

 

-405    主机变量的地址没有适当地对齐.

 

请检查程序建构 sqlda 以及相关数据结构的方式; 程序可能设定了非 word 对

齐的指标. 同时, 也请确定全部的主机变量都是以其类型, 在适当的地址界限上

排列. 如果程序是 INFORMIX-4GL 或是程序设计人员没有控制储存地址对齐的

其他语言所撰写, 此错误应该不会发生. 如果错误再度发生, 请记录下所有的情

况并联络 Informix 技术支持部门.

 

 

-406    内存配置失败.

 

在现有叙述中的某个对象需要配置内存储存数据, 却无法使用内存. 造成此

错误有几种可能的原因, 例如: 您的应用程序有内存外漏的情形; 您所要求的

资源超出了系统配置所允许的数目; 或是 UNIX 系统本身有问题, 需要将系统重

新开机.

请回复现有的交易. 找出简化此叙述或是移动较少数据的方法. 同时也请与您的

UNIX 系统管理员讨论如何解决内存的问题, 或是找出可以使操作系统提供程

式更多可以执行的虚拟内存的方法. 在 DOS 系统中, 请离开操作系统指令行,

释放一些磁盘空间, 并重新执行您的程序.

 

 

-407    从 sqlexec 程序接收到错误码 zero .

 

此为内部错误, 显示在数据库服务器以及呼叫它的函数馆函数之间的通讯问题.

请确定您的程序与使用的数据库服务器的软件层级是相同的. 如果错误再度发

生, 请记录下全部的情况并联络 Informix 技术支持部门.

 

 

-408    从 sqlexec处理程序收到不正确的信息类型.

 

这个内部错误表示数据库服务器和呼叫它的函数馆函数之间的通讯问题. 确定

你的程序软件和使用中的数据库引擎兼容. 若此错误再度发生, 请记下所有的情

况, 并洽询 Informix 技术支持部门.

 

 

-409    找不到 sqlexec 或是目前的使用者无法执行.

 

您的应用程序在数据库服务器处理程序启动时与其联络. 方法是使用 SQLEXEC

环境变量 (数据库服务器 6.0 以前的版本) 中的值; 它应该会指向两个可执行文件的

其中一个: sqlexec for INFORMIX-SE 或 sqlturbo for INFORMIX-OnLine

(6.0 之前的版本). 通常这些会在 INFORMIXDIR 环境变量所指的目录之 lib

子目录中. 请检查您的 SQLEXEC 环境变量的设定正常, 而您的账户能存取这些

目录和档案.

 

 

-410    准备叙述失败或没有执行.

 

EXECUTE 叙述参照没有准备的 statement id. 若不是没有完成 PREPARE 叙述,

就是虽然完成一个 PREPARE 叙述, 但是却传回一个错误码. 请检查程序逻辑以

确定叙述已经准备, 而且PREPARE 传回码也已经检查. 来自 PREPARE 的负值

错误码通常会反映准备之叙述的错误.

 

 

-411    无法指定主机变量和叙述指针.

 

此叙述有一个 USING DESCRIPTOR 子句, 但是它也参照以主机变量宣告的光标

(也就是说, 以在 VALUES 子句中使用变量的 SELECT...INTO 或 INSERT).

叙述指针结构和主机变量名称的目的是要指定数据值的位置, 而且只有一种方

法可以使用. 请检查光标的宣告并决定指定数据值位置的方法.

 

 

-412    指令指针为 NULL.

 

此叙述 (可能是 EXECUTE 或 DECLARE) 参照从未准备, 或是已经释放的动态

SQL 叙述. 请检查程序的逻辑, 以确定叙述已经准备, PREPARE 没有传回错误

码, 以及 FREE 叙述没有用来释放在此以前的叙述.

 

 

-413    尝试在未开启的游标上插入.

 

INSERT 叙述指名的光标从未开启, 或已经关闭. 请检查程序的逻辑, 并确定它会

在此之前开启游标, 而不会意外地将它关闭. 请注意 COMMIT WORK 或

ROLLBACK WORK 会自动将插入光标关闭.

 

 

-414    尝试在 NULL 游标上插入.

 

PUT 叙述指定了不正确的游标. 光标可能已经以 FREE 叙述释放, 或者光标

数据结构已经在内存中覆写.

 

 

-415    数据转换错误.

 

数据库服务器无法在程序变量和数据库栏之间转换. 在许多情况下它会执行

自动数据转换, 但是在此处无法执行. 举例来说, 只要字符串包含正确数目的

数字, 字符字符串会转换为数字的类型, 而只要接收程序对数值的精准度足

够的话, 浮点或十进制的数值将会转换为整数. 请检查此叙述, 查看与匹

配数据库栏的数据类型不相同的每个程序变量.

 

 

-416    开启叙述的 USING 选项对插入光标来说是不正确的.

 

OPEN 叙述参照的游标是宣告给 INSERT 叙述的. OPEN 的 USING 子句在此

例中是不适用的,它只是用来指定和 SELECT 叙述一起使用的变量. 请检查程序以

确定在此叙述中已经使用了正确的光标. 如果是如此, 并且如果 INSERT 是

DECLARE 叙述的部份, 您就可以直接在主机变量中指名. 如果 INSERT 已经

准备, 您可以在 PUT 叙述中的 FROM 子句指定主机变量.

 

 

-417    FLUSH 只能在插入的光标上使用.

 

FLUSH 叙述参照与 SELECT 叙述结合的光标, 而与 INSERT 叙述无关. FLUSH

只有与插入光标才适用. 请检查程序以确定已经指名了正确的光标.

 

 

-418    遭遇到 NULL SQLDA 叙述指针或主机变量列表.

 

请检查程序建构 sqlda 和相关数据结构的方式, 可能程序设定了 null 指针.

如果程序是 INFORMIX-4GL 或程序未在其中直接建构 sqlda 的其他语言所

撰写, 或是此叙述只以名称参照主机变量, 此错误应该不会发生. 如果错误重现,

请记录下所有的情况并联络 Informix 技术支持部门.

 

 

-419    在 SQLDA 或主机变量中的 SQLDATA 指针为 null.

 

请检查程序建构 sqlda 和相关数据结构的方式, 可能程序设定了 null 指针.

如果程序是 INFORMIX-4GL 或程序未在其中直接建构 sqlda 的其他语言所

撰写, 或是此叙述只以名称参照主机变量, 此错误应该不会发生. 如果错误重现,

请记录下所有的情况并联络 Informix 技术支持部门.

 

 

-420    无法执行远程 sqlexec.

 

您的应用程序正在启动, 而且正尝试与其他计算机中的数据库服务器处理程序

做接触.方法是使用 SQLHOST 环境变量的内容. 请检查 SQLHOST 变数并确认

INFORMIX-NET 或 INFORMIX-STAR 服务已经在其他的机器中启动.

 

 

-421    未知的远程 sqlexec 执行服务.

 

您的应用程序正在启动, 而且正尝试与不同机器中的数据库服务器做连接. 它从

服务项目 sql 之下的档案 /etc/services 中使用信息, 但是却找不到. 请联络为您

安装 INFORMIX-NET 的人员.

 

 

-422    清除未开启之游标.

 

Flush 指名了未开启或是已经关闭之光标. 请检查程序的逻辑并确定光标已

经开启, 并没有意外地关闭. 请注意一个插入的光标会自动地 COMMIT WORK

或 ROLLBACK WORK 关闭.

 

 

-423    FETCH CURRENT 找不到现有的列.

 

FETCH 要求现有的列, 但是需要的项目不存在. 可能是因为光标刚刚才开启,

或是先前的 FETCH 传回一个错误码, 由于其位于数据结束的位置之故. 请检查

程序的逻辑, 并确定在执行此叙述之前使用 FETCH NEXT 或其他的 FETCH 作业

以建立现有的列.

 

 

-424    光标已经在这个准备好的叙述中宣告.

 

DECLARE 叙述将光标与准备好的叙述的名称结合. 然而, 其他 DECLARE 叙述

已经执行,同时将不同的光标与此叙述 id 结合. 这种用法不支援, 叙述只能与一

个光标结合. 请检查在程序中所有的 DECLARE 叙述, 并确定它们全部都参照

唯一的叙述.

此错误讯息在 5.0 或以后的版本应该不会出现.

 

 

-425    数据库目前正由另一位使用者所开启.

 

另一位用户以排他模式开启所要求的数据库, 或者你与数据库服务器的连接

不只一个. 在短暂的迟滞后或数据库闲置时, 请重复该叙述.

 

 

-426    提供了未知的值.

 

此为不应该发生的内部错误. 如果找不到直接的原因, 请记录下所有的情况并

联络您的 Informix 技术支持部门.

 

 

-427    系结计数例程 (Bind Count routine) 以不同的计数呼叫.

 

此为不应该发生的内部错误. 如果找不到直接的原因, 请记录下所有的情况

并联络您的 Informix 技术支持部门.

 

 

-428    系结例程 (Bind routine) 呼叫太多次

 

此为不应该发生的内部错误. 如果找不到直接的原因, 请记录下所有的情况

并联络您的 Informix 技术支持部门.

 

 

-429    指示器变量应该为 2 位的整数.

 

叙述指名为指示器变量的主机变量没有宣告为小整数. 传回指示器变数的值是一

个小整数值. 请检查叙述, 特别是用来作为指示变量的主机变量. 请确定指示器

变量的名称拼法正确, 而且已适当地加以宣告. 在 4GL 程序中, 此错误应该不会

发生. 如果错误重现, 请记录下所有的情况并联络您的 Informix 技术支持部门.

 

 

-430    整数类型大小不匹配.

 

此为内部错误, 显示在数据库服务器以及呼叫它的库存函数馆函数之间的通讯

问题. 请确定您的程序所使用的软件层级与数据库服务器的相同. 如果错误

再度发生的话, 请记录下所有的情况并联络 Informix 技术支持部门.

 

 

-431    浮点类型大小不匹配.

 

此为内部错误, 显示在数据库服务器以及呼叫它的函数馆函数之间的通讯问题.

请确定您的程序所使用的软件层级与数据库服务器的相同. 如果错误重现,

请记录下所有的情况并联络 Informix 技术支持部门.

 

 

-432    日期类型大小不匹配.

 

此为内部错误, 显示在数据库服务器以及呼叫它的函数馆函数之间的通讯问题.

请确定您的程序所使用的软件层级与数据库服务器的相同. 如果错误重现, 请记

录下所有的情况并联络 Informix 技术支持部门.

 

 

-433    金钱类型大小不匹配.

 

此为内部错误, 显示在数据库服务器以及呼叫它的函数馆函数之间的通讯问题.

请确定您的程序所使用的软件层级与数据库服务器的相同. 如果错误重现, 请

记录下所有的情况并联络 Informix 技术支持部门.

 

 

-434    十进制类型大小不匹配.

 

此为内部错误, 显示在数据库服务器以及呼叫它的函数馆函数之间的通讯问题.

请确定您的程序所使用的软件层级与数据库服务器的相同. 如果错误重现, 请记

录下所有的情况并联络 Informix 技术支持部门.

 

 

-450    不合法的 ESQL 定位器, 或 4GL 中未初始化的 blob 变数.

 

在此叙述中使用的 BYTE 或 TEXT 主机变量不正确. 如果这是一个 4GL 的程序

的话,则是没有运用 LOCATE 叙述将变量初始化, 或是变量在定位之后释放. 请

检查程序逻辑, 以确定所有的 BLOB 变量在使用前都已定位. 如果此为 ESQL/C,

则定位器结构不正确或是未初始化. 请确定所有的定位器结构在使用之前都已

配置与填入.

 

 

-451    定位器缓冲区太小.

 

提供给叙述中 BYTE 或 TEXT 值的定位器结构, 其指定的内存缓冲区小于在

(在 loc_bufsize 字段中) 中的值. 实际的大小则是 loc_indicator. 没有传送数据,

请修改程序使用较大的缓冲区, 或将值定位在档案中来代替内存, 或是透过使

用者提供的读取函数来传送节区中的值. 您也可以选择指定 SELECT 叙述中值

的子字符串. 如果这是一个 4GL 的程序, 这个错误应该不会发生. 如果错误重现,

请记录下所有的情况, 并联络您的 Informix 技术支持部门.

 

 

-452    'loc_open()' 失败.

 

呼叫叙述中 BYTE 或 TEXT 值所用的定位器结构中的 loc_open() 函数传回负值.

当值是使用用户所提供的函数来定位 (loc_loctype 包含 LOCUSER), 则此函数

是程序的一部份, 而您必须自行诊断其问题.当值在档案 (loc_loctype 包含

 LOCFILE, 或在 4GL 程序中, 变量已经定位于档案中) 中定位时, 则此错误

表示系统所提供的 loc_open() 函数无法开启档案. 可能的原因包括:档案不存在,

对于此档案没有读取的权限, 开启过多的档案.

 

 

-453    'loc_close()' 失败.

 

呼叫叙述中 BYTE 或 TEXT 值所用的定位器结构中的 loc_close() 函数传回负值.

当值是使用用户所提供的函数来定位 (loc_loctype 包含LOCUSER), 则此函数

是程序的一部份, 而您必须自行诊断其问题. 当值位于档案 (loc_loctype 包含

LOCFILE, 或在 4GL 程序中, 变量已经在档案中找到) 中时, 则此错误表示

系统所提供的 loc_close() 函数无法关闭档案.

 

 

-454    'loc_read()' 失败.

 

呼叫叙述中 BYTE 或 TEXT 值所用的定位器结构中的 loc_read() 函数传回负值.

当值是使用用户所提供的函数来定位 (loc_loctype 包含LOCUSER), 则此函数

是程序的一部份, 而您必须自行诊断其问题. 当值位于档案 (loc_loctype 包含

LOCFILE, 或在 4GL 程序中, 变量已经在档案中找到) 中时, 则此错误表示

系统所提供的 loc_read() 函数无法从档案中读取.

 

 

-455    'loc_write()' 失败.

 

呼叫叙述中 BYTE 或 TEXT 所用的定位器结构中的 loc_write() 函数传回负值.

当值是使用用户所提供的函数来定位(loc_loctype 包含 LOCUSER), 则此函

数是程序的一部份, 而您必须自行诊断其问题. 当值位于档案 (loc_loctype

包含 LOCFILE, 或在 4GL 程序中, 变量已经在档案中找到) 中时, 则此错误

表示系统所提供的 loc_write() 函数无法写入档案中, 可能是磁盘已满, 您不具

有所示磁盘的写入访问权限, 或发生硬件错误.

 

 

-456    指示器值不合适主机变量.

 

此为内部错误, 显示在数据库服务器和呼叫它的函数馆函数之间, 发生了通讯

上的问题. 请确定您的程序与数据库服务器所使用的程序, 其软件的层级相同.

如果错误重现, 请记录下所有的情况, 并联络 Informix 技术支持部门.

 

 

-457    数据库服务器不预期的终止.

 

您的应用程序正在运作的数据库服务器处理程序或处理线串已经终止, DBA

可能已经关闭系统. 其次最可能的原因是内部的错误. 请查看操作系统讯息来

获得更多的讯息. 如果错误重现, 请记录下所有的情况, 并联络 Informix 技术

支持部门.

请检查和此错误一起传回的 ISAM 错误码. 如果是 -129, 数据库服务器尚未

终止, 只是到达了共同使用者会期数目的限制. (请参阅错误 -129 的解释说明)

 

 

-458    长交易中止.

 

数据库服务器 (可能是 OnLine 或 INFORMIX-OnLine for NetWare) 记录此交易

的登录空间用完, 没有完全记录下来的交易无法回复以保存数据库的整合性, 作

业系统会结束交易并自动地将它加以回复. 所有自从交易开始后所做改变都会

删除. 终止应用程序并重新设计, 使得每次交易修改较少的列. 您也可以与

OnLine 管理员联络, 讨论增加逻辑的登录的数目或大小. 准备好讨论修改或插

入的列数及每列的大小.

 

 

-459    INFORMIX OnLine 关机.

 

您的应用程序所使用的 OnLine instance 已经被其作业员所关闭. 您现有的交易会在

数据库服务器重新启动时自动地回复, 此时再重新执行应用.

 

 

-460    叙述长度超过最大值.

 

在 PREPARE, DECLARE, 或 EXECUTE IMMEDIATE 叙述中的叙述本文超过

了数据库服务器能够处理的长度. 实际的限制在不同的内部设计中会有所不同,

但是通常能够处理的长度非常广泛, 多数最多可以到 32,000 个字符. 请检查程

式的逻辑, 确定某些错误并没有造成出现超过所要长度的字符串. 举例来说, 重

迭内存中的 null 字符串终端器字节. 如果文字的长度所所需, 您就需要修正

程序在同一时间内处理较少的叙述.

 

 

-461    档案开启错误.

 

这个叙述在档案和BYTE 或TEXT 栏之间, 传送一值, 或是, 这个叙述尝试移除数据库时, 所

需的档案无法使用. 因为定位器结构字段 loc_loctype被设定成 LOCFNAME, 数据库服务器

试着使用 loc_fname中的路径名称和 loc_oflags 旗标来开启档案. 传回了操作系统的错

误. 查看伴随的 ISAM 错误码以获得更详细的信息, 并找寻操作系统的信息. 常见的原因包

括缺乏磁盘空间、档案权限问题以及开启档案数的限制.

 

 

-462    档案关闭错误.

 

此叙述从 BYTE 或 TEXT 栏中读取值并写入至档案中, 数据库服务器会将数据

拷贝至档案中, 但在关闭档案时却发生操作系统错误. 请检查伴随的 ISAM 错

误码以获得更多的信息, 并查看操作系统的讯息. 典型的错误原因包括磁盘空

间不足及硬件错误.

 

 

-463    档案读取错误.

 

此叙述从档案中将值写入至 BYTE 或 TEXT 栏中, 而数据库服务器在读取档案时

发生操作系统的错误. 请检查伴随的 ISAM 错误码以获得更多的信息, 并查看作

业系统的讯息.

 

 

-464    档案写入错误.

 

此叙述从 BYTE 或 TEXT 栏中读取值并写入至档案中, 而数据库服务器在写入资

料时发生操作系统的错误. 请检查伴随的 ISAM 错误码以获得更多的信息, 并查

看操作系统的讯息. 典型的错误原因包括磁盘空间不足及硬件错误.

 

 

-465    无法提供给定位器缓冲区更多的内存.

 

查询传回位于内存中的 BYTE 或 TEXT 值, 而定位器结构要求 (在

loc_bufsize 中设定 -1) 数据库服务器配置内存, 但无法获得缓冲区需要的

内存. 请使用操作系统, 在您的程序中配置更多的数据空间内存 (如果能够

的话), 并再执行一次. 您也可以选择由档案中找出此值, 或使用子字符串来选取

部份的值. 如果这是一个 4GL 程序, 这个错误应该不会发生. 在 DOS 系统中,

请离开操作系统的指令行, 释放一些磁盘空间, 并重新戴入您的程序. 如果错误

再度发生的话, 请将所有的情况记录下来, 并联络 Informix 技术支持部门.

 

 

-466    档案长度错误.

 

此叙述从档案中储存一个值到 BYTE 或 TEXT 栏中. 定位器结构在 loc_locsize

中指定数据的长度, 但是数据库服务器在读取这么多数据之前已发现到档案结束.

请检查程序以确定输入档案的定位是正确的, 并且也指定了正确的长度. 如果檔

案应该读取至档案结束, 请指定长度为 -1. 如果这是一个 4GL 的程序, 此错误

应该不会发生.如果错误再度发生, 请记录下所有的情况, 并联络 Informix 技

术支持部门.

 

 

-467    指示器对象遗失.

 

此程序是以 -icheck 旗标所编译, 而且现有的 SQL 叙述在指示器正常地设定时,

会响应一个截断或 null 值, 或在没有指定指示器变数时, 传回主机变量. 请修

正程序以使用指示器变量.

 

 

-468    无法从系统中获得用户 id: 无法启动数据库服务器.

 

您的应用程序正尝试开启与数据库服务器的通讯, 而开启通讯的动作之一, 便是必须

要从系统密码档案中读取您的使用者 id, 然而读取的动作并不成功. 请参看作业

系统的错误讯息以得到更多明确的信息, 并请咨询系统管理员以确定用户 id 的

档案是所有使用者都可以读取的.

 

 

-469    此叙述指标不存在.

 

指定的系统叙述指针区域的名称在系统叙述指针区域列表中不存在, 所以它并没有

配置. 您必须在使用之前执行 ALLOCATE DESCRIPTOR 叙述来配置此叙述指针

的名称.

 

 

-470    值的出现次数必须大于零.

 

如果您将 WITH MAX occurrences 子句包括在 ALLOCATE DESCRIPTOR 叙述中,

您必须指定一个大于零的 occurrences 值. 请将 occurrences 值改变为正整数并重

新执行 ALLOCATE DESCRIPTOR 叙述.

 

 

-471    使用了不正确的叙述指标名称.

 

如果 SQL 叙述指针的名称是空字符串或是尚未初始的主机变量, 便会产生此错误.

叙述指针名称的命名规则与标识符相同. 请检查叙述指标的名称并确认名称已经

以 SET DESCRIPTOR 叙述加以设定, 或是以 ALLOCATE DESCRIPTOR 叙述

配置, 或以其他方式初始.

 

 

-472    出现次数的值超出范围.

 

请改变 COUNT 叙述的值, 使其值小于或等于 '出现次数' , 并且大于零, 然后

再试一次.

 

 

-473    指定的数据类型不是 X/Open 的标准类型.

 

当 GET DESCRIPTOR 或 SET DESCRIPTOR 叙述以 X/Open 模式执行, 而且

类型字段的值不是 X/Open 标准类型, 就会产生此错误. 请重新检查数据类型的

X/Open 码, 并确定所使用的是正确的类型.

 

 

-474    未知的字段类型.

 

要求了未知的字段类型. 请确定您所使用的是 X/Open 模式中正确的字段类型,

并再重试一次. 正确的字段类型为 TYPE, LENGTH, PRECISION, SCALE,

NULLABLE, INDICATOR, DATA, 和 NAME.

 

 

-475    在 GET 叙述中, 如果 DATA 为 null, 则必须指定 INDICATOR.

 

此为 X/Open 规则. 当 DATA 为 null 时, 您必须在 GET DESCRIPTOR 叙述中要求

INDICATOR 的值.

 

 

-476    LENGTH 字段必须在类型为 SQLCHAR 时加以指定.

 

当您使用 SET DESCRIPTOR 叙述, 而且 TYPE 设定为 SQLCHAR 时, 则

LENGTH 字段也必须指定并在相同的 SET DESCRIPTOR 叙述中设定.

 

 

-477    缓冲区太小.

 

在 GET DESCRIPTOR 叙述中, 指定储存 NAME 项目的缓冲区 (字符主机变量) 太

小. 请增加缓冲区的大小并再呼叫 GET DESCRIPTOR 叙述一次. 当主机变量的类

型为 FILE , 而且用来储存其名称的缓冲区太小时, 此错误讯息也会显示.

 

 

-478    使用者必须指定 TYPE.

 

在初始状态中, 当您执行 SET DESCRIPTOR 叙述时, 您必须指定 TYPE 为设定

之字段的其中一种. 请在 SET DESCRIPTOR 叙述中设定 TYPE 字段并再执行

一次.

 

 

-479    DESCRIBED 栏的数目大于配置的空间.

 

表格中的栏数目大于配置的叙述指针. 请使用 ALLOCATE DESCRIPTOR 叙述

重新配置较大的出现次数值, 并重新尝试 DESCRIBE 叙述.

 

 

-480    有相同名称的叙述指标已经存在.

 

有相同名称的系统叙述指针已经配置, 因此叙述指针的名称不是唯一的. 请改

变在 ALLOCATE DESCRIPTOR 叙述中此叙述指标的名称, 使得叙述指标成为

唯一, 并再执行叙述一次.

 

 

-481    叙述名称不正确或叙述没有 PREPAREd.

 

叙述没有准备好或是使用的叙述名称不正确. 正确的叙述名称是在 1 到 18 个

字符之间, 名称要以非数字的字符开始, 而且不能包含任何空白或非文数字的字

元 (底线除外).

 

 

-482    在非卷动 (non-SCROLL) 光标上的作业不正确.

 

您无法以非卷动的游标发出 FETCH PRIOR, FETCH FIRST, FETCH LAST,

FETCH CURRENT, FETCH RELATIVE n, 或 FETCH ABSOLUTE m 的叙述. 若要如此,

您首先必须宣告光标为卷动的光标.

 

 

-483    SQL 叙述指标的名称太长, 限制为 18 个字符.

 

SQL 叙述指标的名称不能超过 18 个字符.

 

 

-484    叙述/光标的名称太长, 限制为 18 个字符.

 

叙述或光标的名称必须为 1 到 18 个字符.

 

 

-485    主机变量的数目与 SELECT 列表不匹配.

 

此错误只有在您的数据库符合 ANSI 标准的情况下才会发生. 此错误表示在

ESQL 叙述中主机变量的数目, 与数据库服务器所传回值的数目并不相同.

另外, 警告旗标会放置在 sqlca 的 sqlwarn 结构的第三要件中.

执行下列 ESQL/C 范例中第二叙述会传回此错误:

$create table mytab (i integer, f float)

$select * into :var1 from mytab; --error

如果您的数据库并不符合 ANSI 标准, 此叙述和类似的叙述会完成且没有错误, 而

主机变量会依序设定为它们个别传回的值. 如果传回值的数目小于主机变量的值,

则剩余的主机变量即没有定义. 如同符合 ANSI 标准的数据库一样, 警告旗标会放

置在 sqlca 的 sqlwarn 结构的第三要件中.

 

 

-486    在资料转换期间发现不合法的数据类型.

 

在系统叙述指针 sqlvar 项目中发现的数据类型不正确或是尚未初始化. 您无法使用

GET DESCRIPTOR 叙述, 从尚未初始化的 sqlvar 来获得值.

 

 

-487    光标只能宣告为静态或动态.

 

指定的 SQL 叙述需要您将光标宣告为静态或动态. 光标为静态或动态的宣告则要

视游标需要的类型而定, 宣告后请重试指定的作业.

 

 

-488    在光标上的作业不正确.

 

您在光标上尝试了不正确的作业. 宣告给 SELECT 叙述的游标不能用在 PUT 叙

述中. 同样地, 宣告给 INSERT 叙述的游标不能用在 FETCH 叙述中. 请检查程

式并重新再试一次.

 

 

-489    例外值超出范围.

 

所要求的例外值小于 1, 或是大于诊断区域中诊断项目的数目.

 

 

-490    所建立的数据库没有 NLS 的功能.

 

您所建立的数据库缺乏 NLS 的功能.

 

 

-500    丛集索引 '索引名称' 已经存在于表格中.

 

在同一时间内, 表格只能丛集在一个索引上, 此表格已经丛集在名称已经显示

的索引上. 在您丛集其他的索引之前, 您必须执行 ALTER INDEX '索引名称'

TO NOT CLUSTER. 若要查看那些表格丛集在那些索引, 请以如下叙述查询

sysindexes 和 systables :

SELECT tabname, idxname FROM systables T, sysindexes X

WHERE T.tabid = X.tabid AND X.clustered = 'C'

 

 

-501    索引 '索引名称' 已经不被丛集.

 

表格不再丛集在此索引上 (如果曾经有过的话). 请确定此为您所要的索引,

如果是这样, 将不需要改变此索引. 若要了解那些表格被丛集, 请参阅错误 -500

的讨论.

 

 

-502    无法丛集索引.

 

当数据库服务器在丛集序列中建立包含栏之表格的新拷贝时, 数据库服务器发生

无法预期的错误. 请检查伴随的 ISAM 错误码以获得更多的信息. 典型发生错误

的原因包括磁盘空间不足.

 

 

-503    锁定过多的表格.

 

在主机操作系统下的数据库服务器, 对于同一时间内能够锁定之表格的数目有所

限制. 它无法锁定您要求的表格, 请回复现有的交易, 然后重新设计作业以锁定较

少的表格, 或使用列层级锁定来代替, 或是用排他模式开启数据库.

 

 

-504    无法锁定概观档.

 

LOCK TABLE 叙述无法执行, 原因是指定的表格实际上是一个概观档. 只有实际

的表格才能够锁定, 请回复现有的交易, 然后对照概观文件所在的实际表格, 重

新设计作业运作的方式, 或是用排他模式开启数据库.

 

 

-505    UPDATE 中的栏数目并不符合 VALUES 的数目.

 

此 UPDATE 叙述使用的 SET 子句, 将一序列的栏名称设定等于一序列的表达式

或 SELECT 叙述. 在等号左边的栏数目与等号右边所产生的数据数目不相等, 回

复现有的交易, 然后改写此叙述. 如果使用的是表达式, 请检查标点符号, 以确

定每个表达式都是个别存在的. 如果已使用 SELECT 叙述, 请加以检查, 看看它

传回了多少栏.

 

 

-506    您没有访问权限去更新所有的栏.

 

您的账户仅有更新特定栏的权限, 但是此 UPDATE 叙述却更新所有的栏, 或者更

新您未具有权限的栏. 请联络表格的拥有人, 或是在此数据库中具有数据库管理

员权限者, 并要求授予完全的 UPDATE 权限. 若要了解列出表格拥有人的方法,

请参阅错误 -313 的讨论.

 

 

-507    找不到光标 '光标名称' .

 

在 WHERE CURRENT OF 子句中指名的游标并不存在于 UPDATE 或 DELETE

叙述中. 请检查名称的拼法是否正确. 如果此名称是您所要的, 请接着检查并确定

已经执行 DECLARE 叙述, 也请确定没有以 FREE 叙述释放光标.

 

 

-508    无法更名暂时表格.

 

无法执行 RENAME TABLE 叙述, 原因是指定的表格是暂时的. 没有办法将暂

时表格更名, 请检查表格名称的拼法. 如果此名称是您所要的, 您必须将其移

除, 并用不同的名称重新建立一次.

 

 

-509    无法更名暂时表格中的栏.

 

无法执行 RENAME COLUMN 叙述, 原因是指定的表格是暂时的. 没有办法在暂

时表格中更改栏的名称, 请检查表格名称的拼法. 如果此名称是您所要的, 您必须

将其移除, 并且以不同的字段来重新建立一次.

 

 

-510    无法为暂时表格 '表格名称' 建立同义字.

 

无法执行 CREATE SYNONYM 叙述, 原因是指定的表格是暂时的, 请检查表格

名称的拼法是否有误, 如果此名称是您想要的, 您必须要重新设计应用程序:

建立永久的表格或是不使用同义字.

 

 

-511    无法修改系统目录 '表格名称' .

 

您没有允许可以更新, 插入或, 删除此表格中的列. 如果您非常确定必须如此,

就必须以 informix 登入 (signon) 系统. 该用户帐户能够修改多数的系统目

录表格; 然而, 这个动作是很危险的. 因此除非有 Informix 技术支持部门

的特别指导, 否则不建议您进行此项动作.

 

 

-512    在被参考栏上没有参考权限.

 

您在被参考栏上没有参考权限. 被参考表格的拥有人, 或是在该表格上有授予参

考权限选项的用户, 就可以使用 GRANT 叙述授予您参考的权限.

 

 

-513    此数据库服务器不允许此叙述.

 

若另一个数据库已开启, 你无法执行 xa_open(). 确定在执行 xa_open() 之前,

已关闭开启的数据库.

 

 

-514    只有 DBA 能够建立, 移除, 或授予其他的使用者.

 

此数据定义叙述, 指定了其他用户所拥有的表格, 概观文件, 或同义字, 或是授

予如同其他使用者的权限. 这些作业都需要数据库管理员的权限, 而您在此数据库中

没有如此的权限. 如果您想要使用属于您的对象, 请查看叙述的标点符号, 在其中的

某些点上, 您有以其他账户的 user-id 附加在此名称上. 不然由 DBA 授予您 DBA 的

权限,或是让 DBA 帮您做.

 

 

-515    限制的 '限制名称' 已经移除.

 

您正试着移除的限制, 已经在相同的 ALTER TABLE 叙述中移除.

 

 

-516    系统错误-暂时的输出档尚未建立.

 

此为内部错误, 显示数据库服务器以及呼叫它的函数馆函数之间的通讯问题. 请

确定您的程序与使用的数据库服务器有相同的软件层级. 若这错误再度发生,

请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-517    索引的总大小太大或索引分成太多部分.

 

所有的数据库服务器在包括索引的栏数上, 和键的字节总数上 (栏宽总计) 都

有限制. 这个CREATE INDEX 叙述会超过此数据库服务器的限制. INFORMIX-

Universal Server 允许 16 键的索引 (栏的或函数的部分) 和 390个字节的宽度.

 

 

-518    子限制 '限制名称' 找不到.

 

此为内部错误. 若这错误再度发生, 请记下所有的情况, 并且联络 Informix 的

技术支持部门.

 

 

-519    无法将栏更正到不合法值.

 

在此 UPDATE 的叙述的其中一个值是根据错误的表达式而来的. 请检查在

SET 子句中的每个表达式并加以确认, 特别是用到如 LENGTH 和 DATE 的内建

函数.

 

 

-520    无法开启数据库 tblspace.

 

OnLine 数据库服务器无法找到命令中所参考表格存放的磁盘分区区. 请联络您的

OnLine 管理员以了解问题的症结所在. 可能是由于包含 tblspace 的 '闲置区块'

已经脱机.

 

 

-521    无法锁定系统目录 '表格名称' .

 

您无法锁定构成系统目录的任何表格, 在任何时间所有使用者都需要用到它们.

因为数据库服务器能正确处理表格的同时存取, 所以您只能从程序中删除此叙述.

 

 

-522    表格 '表格名称' 没有在查询中选取.

 

您在 GROUP BY 子句或 SET 子句中使用了相互关联名称附加在栏名称上. 请

考虑改写预储程序中的叙述, 以做为触发的动作使用, 并传送栏值做为自变量. 无论

如何, 您必须改写叙述, 不要在 GROUP BY 子句或 SET 子句中使用相互关联

名称.

 

 

-523    仅能回复, 修理, 或移除表格.

 

此叙述 (RECOVER, REPAIR, 或 DROP) 指定一个概观档. 然而, 只有真实的表格

能够支持这些叙述, 概观档则无法支持. 在 DROP 的例子中, 如果您移除了在概

观文件中所使用的任何表格, 则概观档同时也会删除. 若要回复或修理此表格,

您必须回复概观文件用以定义的表格. 若要了解列出其为概观文件的表格名称, 请参

阅错误 -394 的讨论.

 

 

-524    锁定表格只能在交易中使用.

 

因为此数据库有交易的记录, 所以表格只能在交易中锁定. 重新查看程序, 并

确定在此叙述之前已用 BEGIN WORK 叙述启动交易.

 

 

-525    无法满足参考限制 '限制名称' .

 

在 ALTER TABLE 或 SET 叙述期间, 您增加或重新起动该表格中数据违反

的参考限制. 请检查参考栏数据 (子键) 存在于被参考栏 (母键) 中.

 

 

-526    卷动游标不容许更新.

 

对 DECLARE 叙述而言, FOR UPDATE 子句不能和 SCROLL 关键词放在一起.

对符合 ANSI 数据库 (ANSI 数据库在宣告一个更新游标时, 不需要 FOR UPDATE

子句) 中的 UPDATE 叙述而言: 此叙述的光标是以 SCROLL 关键词宣告的,

所以不能用来做更新. 卷动光标的内部设计方式, 使得它不适合用来更新表格,

因为有时候它无法反映选取列的最新状况. 如果您想要使用一个卷动光标来检查

各列, 同时做修改, 可以照下列方式重新设计应用程序 (方法之一) : 使用卷动光标

同时选取每栏的 ROWID, 再宣告一个非卷动的游标, 根据 ROWID 选取要更新

的列. 要更新选取的列时:

*       利用卷动光标找到的 ROWID 值开启更新光标.

*       取回此栏, 检查错误码 (栏可能已删除).

*       如果取回动作成功, 请确认栏的内容和卷动游标所选取的那些栏相同 (此栏

现在已锁定, 所以无法再更改, 但是它有可能在两次取回之间发生改变).

*       如果栏未改变, 请用非卷动的光标更新.

*       关闭非卷动游标.

*       这个步骤在保留卷动光标的便利的同时, 确保了更新能够反映出表格

最新的状态. 由 ROWID 取回一个最近才执行取回的列, 通常不需磁盘动作, 所

以不会花很多时间.

 

 

-527    此系统中没有锁定模式.

 

您尝试在 INFORMIX-SE 中使用 SET LOCK MODE TO WAIT 叙述, 而您的数据库

不是使用 System V 锁定, 而是使用 CREATE LOCKING. 如果错误持续出现, 请记

录下您所使用的环境设定, 并且联络 Informix 技术服务部门.

数据库服务器无法执行 SET LOCK MODE TO WAIT 叙述, 因为主机操作系统对锁

定没有适当的支持, 无法在锁定前等待另一锁定释放. 在此系统上, 您的程序

会在一个表格或列锁定时 (错误 -233 或 -378) 收到通知, 然后要由您的程序

来决定如何反应, 例如回复交易再重试一次.

 

 

-528    超过了最大输出列尺寸 '最大尺寸' .

 

此叙述所选取的字节总数已经超过了数据库服务器和程序之间传递的最大容许值.

请先确定您确实想要选取这么多栏, 同时检查您是否不小心选取了某些非常宽的字

元栏, 或是忘了指定一个子字符串, 或是指定了太长的子字符串. 如果选取确

实无误, 您必须重写此 SELECT 叙述, 分为二或三个叙述, 每个叙述选取一部份

字段. 如果这是数个表格的结合, 您最好选择所有想要的数据 INTO TEMP, 然后

选取暂时表格的个别栏. 如果这是经由程序中的光标 FETCH, 您可以用下列方式

修改程序. 首先改变光标, 仅选取想要的列的 ROWID. 然后将一系列的 SELECT

叙述加上 FETCH 叙述, 每个 SELECT 叙述选取一或数栏 WHERE ROWID= 所

储存的列 ID.

 

 

-529    无法连上共同内存

 

(此错误仅出现在 6.0 之前的版本.) 您的应用程序无法初始化和数据库的链接,

因为您正在使用共享内存的执行模式, 可能原因包括数据库共享内存并未初

始化, 或是使用系统的用户已经达到最大值. 请检查伴随出现的 ISAM 错误码,

以获取进一步讯息.

 

 

-529    无法连上共同内存

 

(此错误仅出现在 6.0 之前的版本.) 您的应用程序无法初始化和数据库的链接,

因为您正在使用共享内存的执行模式, 可能原因包括数据库共享内存并未初

始化, 或是使用系统的用户已经达到最大值. 请检查伴随出现的 ISAM 错误码,

以获取进一步讯息.

 

 

-530    检查限制 '限制名称' 失败.

 

违反了表格栏中的检查限制. 若想查看和栏相关的检查限制, 您可以查询

syscheck 系统目录表格. 然而, 在您查询 syckeck 之前, 您必须知道检查限制

的 constrid 为何. (constrid 是指定在 sysconstraint 系统目录表格中.) 请

使用下列子查询来显示 '限制名称' 的检查限制.

SELECT * FROM syschecks WHERE constrid =

        (SELECT constrid FROM sysconstraints WHERE constrname =

constraint-name)

 

 

-531    概观档中有重复的栏 '栏名称' .

 

这个 CREATE VIEW 叙述列出一个栏名称的清单, 而至少其中之一在清单中出现

两次. 请检查栏名称的清单, 以确定每个栏都只出现一次.

 

 

-532    无法改变暂时表格 '表格名称' .

 

所显示的表格只是一个暂时表格, 在此会期结束时就会消失. 这种表格无法更改.

若要改变此表格, 请直接移除, 然后再重新建立一个即可.

 

 

-533    范围大小过小, 最小是 number k.

 

指定的磁盘延伸区块大小 (EXTENT SIZE 是 NEXT SIZE 子句), 必须至少为如所示

磁盘分页的四倍大. 通常最好将 EXTENT SIZE 的大小设为足够容纳初步估计的

全部字段总数, 而将 NEXT SIZE 设为这个数目的八分之一或是四分之一.

 

 

-534    无法插入新字段到表格中, 表格被锁定.

 

此错误不会由 4.0 和以上版本的数据库服务器传回.

在早期的版本中, 这个

错误的意义和具有 ISAM 错误码 -113 的错误 -271 相同.

请回复目前的交易, 等表格

解除锁定时, 再重新执行一次.

 

 

 

-534    无法插入新字段到表格中, 表格被锁定.

 

此错误不会由 4.0 和以上版本的数据库服务器传回.

在早期的版本中, 这个

错误的意义和具有 ISAM 错误码 -113 的错误 -271 相同.

请回复目前的交易, 等表格

解除锁定时, 再重新执行一次.

 

 

 

-535    已在交易中.

 

这个 BEGIN WORK 叙述是多余的, 已经有一个交易在进行中. 如果这是程序的话,

请检查它的逻辑, 确定不是因意外而无法结束上次交易.

 

 

-536    在子限制中的字段数目不符合母限制中的字段数目.

 

参照字段 (子键) 的数目不符合在参照限制中的被参照字段 (母键数目). 请确

定参照和被参照字段间保持一对一的关系.

 

 

-537    表格中找不到限制栏 '栏名称'

 

限制定义中指定的栏不存在.

 

 

-538    光标 '光标名称' 已经宣告过了.

 

此 DECLARE 叙述中宣告的光标名称, 在先前执行的 DECLARE 叙述中已经宣告

过了. 有可能是此 DELCARE 是在循环当中执行, 或是程序原来是要执行一个 FREE

叙述, 结果却没有执行. 请检查程序的逻辑, 确定每个光标仅执行一次 DECLARE

(除非是在释放之后).

 

 

-539    DBTEMP 太长.

 

DBTEMP 环境变量中的路径名称超过路径名称 80 字符的限制. 你必须在目录

阶层中找到较高阶层的暂时目录. 在 5.01 版本以后, INFORMIX-SE 数据库伺

服器使用 DBTEMP 环境变量, 但 Informix 活动服务器和 INFORMIX-OnLine

活动服务器则不是.

 

 

-540    写入限制失败.

 

在定义限制时发生错误, 可能是您定义的限制名称和另一个限制, 表格, 或索引

的名称重复. 如果确实是如此, 请重复使用该叙述, 指定一个唯一的名称. 否则

请检查伴随出现的 ISAM 错误码, 以获取进一步的信息.

 

 

-541    使用者未具有变更的权限.

 

在变更表格的名称、或表格内栏的名称、类型或栏数之前, 必须取得正确的

权限. 你也必须具有正确的权限以便针对对象模式, 设定其限制和触发器.

 

你必须是数据库对象的拥有者, 在数据库中有数据库管理员的权限, 或由它的拥

有者或 DBA 来授予变更数据库对象的权限. 参阅错误 -313 的讨论, 以便了解

列出表格的拥有者和具有 DBA 权限的使用者的方法.

 

 

-542    无法在同一限制, 触发器, 或索引中指定同一栏一次以上.

 

您在一个更新触发器的触发栏清单中指定同一栏一次以上. 请删除重复出现的

栏, 然后再试一次. 若是在索引列表中有重复的栏名称, 也会出现此错误.

 

 

-543    ESCAPE 字符必须只有一个字符.

 

在 WHERE 子句中, 有一个副子句 ESCAPE char 包含了超过一个字符做为 char.

请检查子句的标点符号, 并修改它成为仅指定一个字符.

 

 

-544    不能在累积中再累积.

 

在叙述中的一个累积函式的参数清单中又包含了对于另一个累积函式的呼叫, 例如

SUM(MAX(column)). 这是不支持的作业, 因为所有的累积都是对于同一组的列做运

算. 如果您本意并非如此, 请检查是否缺少括号, 或是括号的位置错误. 如果您本

意如此, 您必须再重新考虑此查询. 例如, 您可以选取 MAX 值到一个暂时表格中,

然后取其 SUM.

 

 

-545    对于表格 '表格名称' 没有写入访问权限.

 

检查伴随出现的 ISAM 错误码, 以获取进一步讯息. 对于此数据库服务器而言,

一个数据库就是一个名称为 dbname.dbs 的目录, 而表格及索引就是目录内的文件

案. 您必须对于这些档案有读写权, 才能执行正常的数据库功能.

 

 

-546    建立概观档 '概观档名称' 时无法得到主机变量

 

此叙述准备或执行一个 CREAT VIEW 叙述, 而在此叙述中的 SELECT 叙述参考了

主机变量. 这是不支持的作业. 在一个概观档当中的 SELECT 叙述应能由任

何程序中执行, 不应该依赖某一程序的变量. 请检查 CREATE VIEW 叙述并确定它

不包含任何主机变量的名称, INTO 子句, 或 "?" placeholder.

版本5.01 以后的数据库服务器,不再使用此错误讯息.

 

 

-547    必须在数据库目前所在的目录中正向回复数据库.

 

在执行 ROLLFORWARD 叙述之前, 请先让当前目录成为包含名称为 dbname.dbs

目录的数据库目录, 然后再执行此叙述.

 

 

-548    在一个 TEMP 表格中, 不允许参照限制或触发器的存在.

 

您不能在暂时 (TEMP) 表格中建立一个限制或是触发器. 请考虑将此暂时表格建

立为数据库中的一个永久表格. 如果这不可行的话, 可以先建立表格, 再在其上

建立触发器.

 

 

-549    在 UNIQUE 限制中的栏 '栏名称' 不是表格中的一个栏.

 

所显示的栏有出现在 UNIQUE 子句的栏清单中, 但是它并不是在表格中定义的栏.

请检查此叙述中的所有域名的拼法是否正确. 如果拼法无误, 请再检查表格

的定义. 若要列出表格中所有栏名称, 请看错误 -328 的讨论.

 5.01 版以后的数据库服务器, 不再使用此错误讯息.

 

 

-550    受限制字段的总长度太长.

 

在一 UNIQUE,PRIMARY KEY,或 FOREIGN KEY 子句中

全部列出的字段的总长度是有限制的.限制取决于使用中的数据库

服务器,但全部的服务器可支持 120 字节.此限制和

合成索引中全部字段的总长度的限制是相同的.

若需更多的信息,请参阅"Informix SQL 使用指南:语法"

中的 CREATE TABLE 叙述.

Total length of columns in constraint is too long.

 

 

-551    此限制包含太多栏.

 

在一个 UNIQUE, PRIMARY KEY, 或 FOREIGN KEY 子句中的栏的总数是有限制的.

此限度随所使用数据库的不同而异, 但是所有服务器都至少支持 8 栏. 此限度

和合成索引的栏总数限制是一样的. 若需进一步信息, 请参考 Informix Guide

 to SQL: Syntax 中的 CREATE TABLE 叙述.

 

 

-552    在多重叙述的准备 (prepares) 中, 不允许 blob 主机变量的存在.

 

此 EXECUTE 命令执行一序列多重叙述. 在清单中提供给 "?" placeholder 的主

机变量中有一或多个变量是属于 TEXT 或 BYTE 值的定位器结构. 这是不允许

的作业. 参考 TEXT 或 BYTE 变量的叙述是可以准备及执行的, 但是必须是单一

的叙述, 而非多重叙述的部份.

 

 

-553    在 $INFORMIXDIR/bin 中找不到 msdbsdir. 请参考您的安装手册.

 

mkdbsdir 是个可执行程序, 用来在执行 CREATE DATABASE 叙述时建立数据库目

录的初始内容. 它和数据库服务器一起销售给用户, 应该可以在由 INFORMIXDIR

环境变量所指名的目录下之 bin 目录找到, 但是却找不到. 请检查 INFORMIXDIR

的设定, 再请教当初安装此软件的人员.

 

 

-554    此数据库服务器不允许这个语法.

 

你正使用的数据库服务器不支持这个叙述或其中的一些子句. 当程序启动时, 会

根据 SQLEXEC 环境变量来选择使用中的数据库服务器 (数据库服务器为 6.0

以前的版本). INFORMIX-SE 和其他 Informix 数据库服务器之间, 叙述语法之

间会有些微差异. 例如, INFORMIX -SE支持CREATE TABLE 叙述的IN

'pathname' 子句, 而其它Informix数据库服务器则支持IN dbspace子句.

 

 

-555    无法在一个多查询准备中, 使用选取或是任何数据库叙述.

 

此 PREPARE 叙述的本文中有多个叙述以分号隔开, 而这些叙述之一是

SELECT,DATABASE, CREATE DATABASE, 或 CLOSE DATABASE. 这些叙述

必须以单一叙述的方式准备. 请检查叙述本文, 确定您要使用多个叙述, 如果

确实如此, 请修改程序让这四种叙述类型分别单独执行.

 

 

-556    无法建立, 移除, 或修改另一数据库中的对象.

 

此叙述尝试建立, 移除, 或是改变一个外部数据库 (目前数据库之外的数据库)

中的物件. 您只能读取外部数据库的内容. 如果您将该数据库指定为目前数据库,

即可修改其内容. 所有以 dbname 起头的名称皆会参考数据库 dbname 中的对象,

请重新检查所有名称的用法.

 

 

-557    在 'level-count' 层同义字映像之后, 在另一个服务器找不到表格.

 

此查询中的表格之一事实上是一个同义字, 而它指向目前的数据库之外. 它所指的

实际上是另一个指向其本身数据库以外的同义字, 如此连续数个 (count) 同义字,

却一直找不到真正的表格. 此数据库服务器已经放弃了这个查询, 以免这些同义字

一直循环下去. 您可以检查目前数据库中, 指向外部数据库的同义字, 利用查询

systable 和 syssyntable 的方式, 如下所示.

SELECT

T.tabname synonym, servername, dbname, user, S.tabname

FROM            systables T, syssyntable S

WHERE   T.tabtype = 'S'

AND             T.tabid = S.tabid

AND             S.btabid IS NULL

欲经由外部数据库找寻同义字的串行, 请在外部数据库中使用类似的查询, 并用

前一查询每一次传回的值取代 servername, dbname, 和 tabname.

SELECT

T.tabname synonym, servername, dbname, user, S.tabname

FROM            dbname@servername:systables T,

                dbname@servername:syssyntable S

WHERE   T.tabtype = 'S'

AND             T.tabname = ' tabname'

AND             T.tabid = S.tabid

如果结果没有传回任何列, 表示所要求的 tbname 在那个数据库中未定义为

同义字 (而是一个表格, 概观文件, 或并未定义).

 

 

-558    在 $INFORMIXDIR/bin 中找不到 changrp. 请参考您的安装手册.

 

此命令需要有一个称为 changrp 的执行档才能执行, 此文件通常在安装数据库伺

服器时会一并安装, 它应该是在由 INFORMIXDIR 环境变量所指名的目录之下的

bin 子目录当中. 请检查该变数中的值, 并请教当初安装此软件的人员.

 

 

-559    无法在一个同义字之上再建立一个同义字.

 

这个 CREATE SYNONYM 命令中用到了另一个同义字. 不支持使用连串的同义字.

请看错误 -218 的讨论, 以便了解如何列出所有同义字的名称. 如果您希望让第二个

同义字和第一个同义字有相同的意义, 可以找出另一同义字的意义, 然后指定一个新

的同义字到相同的基表. 要知道一个同义字的基表为何, 可以查询 systable 和

syssyntable, 如下所示, 将同义字的名称代换掉.

SELECT  T.tabname synonym, S.* FROM systables T,

                syssyntable S

WHERE   T.tabname = name

AND             T.tabid = S.tabid

如果结果显示 btabid 有定义, 则同义字以 tabid 参考到现有数据库中的表格,

不然则参考到外部数据库.

 

 

-560    在 systable 中找不到有 tabid number 的同义字.

 

可能是 systable 或是 syssyntable 系统目录, 或是这二者其中之一的索引

发生毁损.

请执行 bcheck 或 secheck 公用程序. 请准备移除并重新建立所有的

同义字.

 

 

-561    datetime 值无法做加总和平均的运算.

 

此叙述对一个型态为 DATETIME 的栏, 进行累积的运算, 如 SUM. 此函式如同所有数

学运算函式, 并未定义于此种数据型态中. 请检查您对累积函式的运用, 您将需要修

改此查询.

 

 

-562    数据库转换失败.

 

您正在执行一个新版本的数据库服务器, 且您刚刚才以这个版本的软件, 第一次

开启了一个数据库. 此数据库服务器已尝试过借着定义一个额外的系统目录表格

自动升级此数据库, . 但发生了未预期的错误. 请检查伴随出现的 ISAM 错误码

以获取进一步的讯息. 如果错误持续出现, 请记下所有的情况, 并且联络

Informix 技术服务部门.

 5.0版以后的数据库服务器不再使用此错误讯息.

 

 

-563    无法取得数据库转换中的排他锁定.

 

您正在执行一新版的数据库服务器,而且您是

第一次以此软件层级来开启一数据库.

数据库服务器可能定义一个额外的系统目录表格

来试着自动升级数据库.但是,这

需要锁定数据库,不让其他人使用以执行此转换,而且

某些用户已开启数据库.请等一会,然后再尝试

此叙述.此时数据库可能是闲置的 (或其他

使用者的动作可能已更新它).

Cannot acquire exclusive lock for database conversion.

 

 

-564    无法替列做排序.

 

这是一个内部错误, 显示在执行排序时, 发生未预期的状况. 请检查伴随出现的

ISAM 错误码, 以获取进一步讯息. 如果错误持续发生, 请记下所有的情况,

并且联络 Informix 技术服务部门.

 

 

-565    无法读取排序后的列.

 

这是一个内部错误, 显示在执行排序时, 发生未预期的状况. 请检查伴随出现的

ISAM 错误码, 以获取进一步讯息. 如果错误持续发生, 请记下所有的情况,

并且联络 Informix 技术服务部门.

 

 

-566    无法启动排序.

 

这是一个内部错误, 显示在执行排序时, 发生未预期的状况. 请检查伴随出现的

ISAM 错误码, 以获取进一步的讯息. 如果错误持续发生, 请记下所有的情况,

并且联络 Informix 技术服务部门.

 

 

-567    无法写入排序后的列.

 

这是一个内部错误, 显示在执行排序时, 发生未预期的状况. 请检查伴随出现的

ISAM 错误码, 以获取进一步的讯息. 如果错误持续发生, 请记下所有的情况,

并且联络 Informix 技术服务部门.

 

 

-568    无法在不做登录的情况下参考外部数据库.

 

此叙述参考到一个目前数据库以外的数据库. 然而, 目前的数据库使用交易登录,

而外部数据库没有使用, 这是不支持的作业. 在单一交易中使用的数据库必须全

都使用登录, 或是全都不使用.

 

 

-569    无法在登录的情况下参考外部数据库.

 

此叙述参考到一个目前数据库以外的数据库. 然而, 目前的数据库不使用交易登录,

而外部数据库则有使用登录, 这是不支持的作业. 在单一交易中使用的数据库必须全

都使用登录, 或是全都不使用.

 

 

-570    无法参考到一个外部 ANSI 数据库.

 

此叙述参考到一个目前数据库以外的数据库. 然而, 目前的数据库不是遵循 ANSI

标准的, 而外部数据库则是, 这是不支持的作业. 在一个单一交易中使用的数据

库必须全部是 ANSI 兼容, 或全部都不兼容.

 

 

-571    无法参考一个非 ANSI 的外部数据库.

 

此叙述参考到一个目前数据库以外的数据库. 然而, 目前的数据库是遵循 ANSI

标准的, 而外部数据库则不是, 这是不支持的作业. 在一个单一交易中使用的资

料库必须全部是ANSI 兼容, 或全部都不兼容.

 

 

-572    指定的等待时间太长.

 

您可以在 SET LOCK MODE 中指定为 WAIT 时间的最大值是 32,767 秒. 请检查此

叙述, 确定它所指定的时间长度是您想要的. 如果时间无误, 那么请使用一个较

短的时间 (因为 32767 秒超过 9 个小时) 或是干脆省略时间长度以指定不限时

间的等待.

 

 

-573    无法在一个 ANSI 模式的数据库中, 设定登录为缓冲模式.

 

这个叙述尝试使用 BUFFERED LOG 模式, 但是数据库是遵循 ANSI 标准的, 也就

是说,它是以 MODE ANSI 子句建立的. ANSI 标准的内容之一就是所有的交易都是

在执行 COMMIT WORK 叙述时马上登录. 缓冲登录的结果是登录记录的写入会

推迟, 以增加效率, 但也必须冒些许登录交易失败的危险. 在此标准下这样的冒险

是不容许的, 遵循 ANSI 的数据库必须使用无缓冲的登录.

 

 

-574    子查询的传回不是正好一栏.

 

此叙述包含了一个做为单一值 (如出现在等号之类之关系操作数的一边) 的子查询

 (一个括号内的 SELECT 叙述), 这样的子查询的传回值必须正好一列或是一栏,

否则就无法确定那一个传回值才是需要的. 这个子查询传回了不止一个值, 请检

查所有的子查询, 确定它们至多传回一栏 (在 SELECT 之后只列一个表达式) 且至

多一行 (在 WHERE 栏中测试一个唯一键).

 

 

-575    LENGTH() 需要字符串型态的值.

 

这个叙述内的 LENGTH 使用在非字符型态 (不是 CHAR 或 VARCHAR) 的栏或是运

算式中. 这是不支持的作业. 请检查 LENGTH 的使用, 确定它们仅用在字符类型

的值上.

 

 

-576    无法指定 TEMP 表格的 CONSTRAINT 名称.

 

您无法为放在暂时表格中的限制 (UNIQUE, PRIMARY KEY, 或 CHECK) 指定名称.

暂时表格不支持这个作业. 然而您可以指定一个栏去接收其中一个限制, 也可以

指定某些栏有同一限制. 但是您不能使用 CONSTRAINT  '限制名称' 子句.

暂时表格和它们的索引并没有记录在一般的系统目录表格中.

 

 

-577    同一类型的限制已经存在于栏的集合中.

 

您放置了一个限制 (UNIQUE, PRIMARY KEY, FOREIGN KEY, 或是 CHECK)

在一个栏集合中, 但是同一类型的限制已经存在于那些栏中. 以 FOREIGN KEY

的情形而言, 这个错误仅会发生于同一外部键的栏集合, 参考同一现存母键栏集合

的时候. 有可能限制是在表格建立时产生的, 或是在那之后加入. 因为限制已经存在,

所以不会再加入一次.

 

 

-578    拥有人名称过长.

 

此叙述包含了一个附加在表格, 概观文件, 索引或同义字名称的拥有人名称, 而此

拥有人名称太长, 超过了最大值 8 个字符 (例如 overly_long.tablename). 请

检查所有标识符的标点符号和拼法, 很可能是少了一个空格或逗点, 使二个名称

连在一起. 您可以选择相关系统目录 (包括 systable, sysindex, 或

syssynonym) 的拥有人字段, 以查看所有已知拥有人的名称.

 

 

-579    不是同义字的拥有人.

 

在此 DROP SYNONYM 叙述中指定的同义字并非您所拥有. 若要移除一个您并

不拥有的对象, 您必须有数据库管理员的权限.

 

 

-580    无法废止访问权限.

 

无法执行此 REVOKE 叙述, 可能是废止一个数据库阶层的权限, 而您并不

是此数据库的数据库管理员, 或是它废止的是表格阶层的权限, 而您的账户

名称并不允许这种权限. 请检查此叙述中的权限和使用者名称, 确定它们是正确

的. 您可以查询 systabauth, 以取得您已授予的表格阶层权限的摘要, 如下所示.

SELECT  A.grantee, T.tabname FROM systabauth A, systables T

WHERE   A.grantor = USER AND A .tabid = T.tabid

 

 

-581    加载讯息文件错误.

 

无法完成此 SET EXPLAIN 叙述, 因为数据库服务器找不到它在准备解释性输出

时使用的讯息样版档案. 请求助于当初安装此 Informix 软件的人员.

 

 

-582    数据库没有登录.

 

无法执行此 ROLLFORWARD 叙述, 因为此数据库没有交易登录. 正向回复作业需要

登录作为它的输入. 因为没有交易登录, 所以数据库无法进行正向回复.

 

 

-583    概观档访问权限不再正确 -- 对于远程对象的访问权限已废止.

 

此叙述查询一个建立在外部数据库 (目前数据库以外的数据库) 内表格的概观文件.

然而, 在那些数据库中, 您的账户对于此概观档所使用的一个表格, 没有必要的

表格阶层的权限, 或是可能您对外部数据库的 CONNECT 权限已废止. 要了解

如何显示概观文件的定义, 请看错误 -385 的讨论. 在概观档的定义中, 请找附有

数据库名称, 也许还加上 site 名称的表格名称.

 

 

-584    无法重新命名系统目录.

 

无法执行此 RENAME COLUMN 叙述, 因为它会改掉组成系统目录的某一表格. 这

些表格的名称不能改变, 数据库服务器本身会用到它们.

 

 

-585    无法为系统目录中的栏重新命名.

 

无法执行此 RENAME COLUMN 叙述, 因为它会改掉组成系统目录的某一表格其中的

一栏. 数据库需要依赖这些栏的名称来做内部查询, 所以不能更动这些名称.

 

 

-586    光标已经开启.

 

此数据库是在 ANSI 兼容模式中作业 (以 MODE ANSI 建立或启动的). 根据

ANSI SQL 的规定, 游标必须先关闭才能重新开启. 检查程序的逻辑, 也许程序

原先写作的用意是要利用 Informix 的 SQL 扩充功能: 如果光标重新开启,

它会自动关闭再开启. 在目前的数据库中, 这是不允许的.

 

 

-587    无法删除档案 '文件名' .

 

4.0 以上的版本不再使用此讯息. 若您是用先前的版本, 请检查伴随出现

的 ISAM 错误码, 以获取进一步讯息.

 

 

-588    不正确的主机变量号码.

 

这是一个由 4.1 及其后版本的数据库服务器所侦测到内部错误. 如果错误持续

发生, 请记下所有的情况, 并且联络 Informix 技术服务部门.

 

 

-589    无法在一次交易中更新多个 site.

 

此数据库服务器仅支持 '单一 site 更新' , 也就是说, 在一次交易之内的作业只

能修改网络上一个 site 的数据. 此交易内的先前某些叙述已经修改了一处 site 中

的资料, 而目前的叙述又要修改另一 site 中的数据. 此叙述未执行. 请回复目

前的交易, 检查应用程序是否有触犯此限制. 同时检查会受 UPDATE, INSERT,

和 DELETE 叙述影响的表格名称, 确定它们都在同一数据库中, 或是都在同一资

料库服务器的数据库中. (请检查任何同义字的定义, 因为同义字会让外部的资

料库的表格看起来像是在目前的数据库中.)

 5.01 版以后的数据库服务器不再使用此错误讯息.

 

 

-590    例程快取遭毁损.

 

若这个内部错误再度发生, 请记下所有情况, 并洽询 Informix 技术支持部门.

 

 

-591    非法的栏/变量 '栏名称/变量名称' 默认值.

 

指定的默认值对于某一栏. 或某一预储程序变量而言是错误的类型. 一个栏的默认值

是以 CREATE TABLE 中的 DEFAULT 子句来指定的. 一个预存程序中的变量默认值是以

程序中的 DEFINE 叙述的 DEFAULT 子句所指定的.

 

 

-592    当默认值是 null 时, 无法指定栏为 null.

 

此 CREATE 或 ALTER TABLE 叙述指定栏的内容不能包含 null (NOT NULL 子句),

但是同时又有一个 DEFAULT 子句指定新列的默认值为 NULL. 此种前后矛盾是不

允许的.

 

 

-593    无法指定默认值给 SERIAL 栏.

 

此 CREATE 或 ALTER TABLE 叙述指定栏具有 SERIAL 数据类型, 但是此叙述对于

此栏同时有一 DEFAULT 子句. 在每次建立一个列时, 数据库服务器会产生 SERIAL

栏的值, 所以 DEFAULT 子句是没有意义的.

 

 

-594    无法指定非 null 的默认值给 blob 栏.

 

此 CREATE 或 ALTER TABLE 叙述指定一个栏的数据型态为 BYTE 或 TEXT.

此叙述还包含一个指定非 NULL 的栏之 DEFAULT 子句. 但您仅能指定 NULL

默认值给 TEXT 或BYTE 数据型态的栏.

 

 

-595    在此上下文中不能以此方式使用累积函式.

 

您在预存程序表达式中的 SQL 叙述之外使用累积函式, 或是在检查限制

之内使用累积函式.

下列为错误范例:

LET var = MAX(another_var) + 10; -- error

预储程序表达式或检查限制内的表达式, 只能参考到一个单一值, 所以使用

累积函式是没有意义的.

 

 

-596    不良的 EXIT/CONTINUE 叙述. 它不在 '叙述名称' 循环中.

 

预储程序 EXIT 和 CONTINUE 叙述必须放在 FOREACH, WHILE, 或 FOR 循环当中.

 

 

-597    [内部] 过早出现的 End Of buffer.

 

如果错误持续出现, 请记下所有的情况, 并且联络 Informix 技术服务部门.

 

 

-598    不良的光标名称 '光标名称' .

 

在预储程序中, 您指定了一个不存在的光标名称于 UPDATE/DELETE. . .WHERE

CURRENT OF 叙述中.

FOREACH cur1 FOR SELECT col INTO var FROM tab

        UPDATE tab SET col = proc(var)

        WHERE CURRENT OF bad_cur_name; -- error

END FOREACH

 

 

-599    无法混合 INFORMIX-OnLine 和 INFORMIX-SE 的语法.

 

您在同一叙述中混合使用了 INFORMIX-OnLine Dynamic Server 和 INFORMIX-SE

数据库服务器的语法. 请使用适合您正使用的数据库服务器的语法.

 

 

-600    无法建立 blob.

 

此叙述欲建立一个 BYTE 或 TEXT 值, 但是发生了未预期的错误, 导致无法建立

此值. 请回复目前的交易. 检查同时伴随的 ISAM 错误码, 以获取进一步信息,

可能是 blobspace 或是 tblspace 已经满了, 或是您并没有参考到一个合法的

blobspace. 如果错误持续出现, 请记下所有的情况, 并且联络 Informix 技术服务

部门.

 

 

-601    无法删除 blob.

 

此叙述欲取代或删除一个 BYTE 或 TEXT 值, 但是发生了未预期的错误,

导致无法

删除旧值. 请回复目前的交易, 检查伴随的错误码, 以获取进一步信息.

可能是硬件错

误, 或是 blobspace 或 tblspace 的数据毁损. 如果错误持续出现,

请记下所有的情况,

并且联络 Informix 技术支持部门.

 

 

-602    无法开启 blob.

 

此叙述欲参考一个 BYTE 或 TEXT 值, 但是发生了未预期的错误, 以致找不到

此值. 请回复目前的交易, 检查伴随出现的 ISAM 错误码, 以获取进一步信息.

可能是发生了硬件错误, 或是 blobspace 或 tblspace数据毁损. 如果错误

持续出现, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-603    无法关闭 blob.

 

此叙述欲写入一个 BYTE 或 TEXT 值, 但是发生了未预期的错误, 导致无法完

成建立此值的步骤. 请回复目前的交易, 检查伴随出现的 ISAM 错误码, 以获

取进一步信息. 可能是发生了硬件错误, 或是 blobspace 或 tblspace 数据毁

损. 如果错误持续出现, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-604    无法读取 blob.

 

此叙述欲参考一个 BYTE 或 TEXT 值, 但是发生了未预期的错误, 导致无法存取此值.

请回复目前的交易, 检查伴随出现的 ISAM 错误码, 以获取进一步信息. 可能是

发生了硬件错误, 或是 blobspace 或 tblspace 数据毁损. 如果错误持续出现, 请记

下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-605    无法写入 blob.

 

此叙述欲写入一个 BYTE 或 TEXT 值, 但是发生了未预期的错误, 导致无法建立此值.

请回复目前的交易, 检查伴随出现的 ISAM 错误码, 以获取进一步信息. 可能是

发生了硬件错误, 或是 blobspace 或 tblspace 数据毁损. 一个可能原因是此栏的

blobspace 已满. 另一可能原因是虽然已经指定了一个新的闲置区块给 blobspace,

但是在闲置区块的加入被登录, 且登录档关闭之前, 分页的配置仍无法进行.

OnLine 管理者可以利用 tbmode -l 或 onmode -l 命令来强迫关闭日志文件.

如果错误持续出现, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-606    非法的 blob space 名称.

 

如果此叙述参考到一个 blobspace (例如, CREATE TABLE 叙述就可以在blobspace-

name 中建立一个 TEXT 类型的栏), 其名称不正确或不存在. 请重新检查做为

blobspace 名称的标识符. 如果拼法无误的话, 请向您的 OnLine 管理员求助, 以便

确定它们是否存在且在在线. 如果此叙述并没有参考到 blobspace, 表示这是一个内

部错误. 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-607    Text/Byte 下标 (subscript) 错误.

 

此叙述参考到使用子字符串符号方式 (名称后中括号内的数字) 的 TEXT 或 BYTE 值.

但是, 此子字符串写错了. 请重新检查所有使用子字符串的地方, 确定第一个数字大于零,

但不大于此值的长度, 第二个数字不小于第一个数字, 而数字间以逗点分开.

 

 

-608    试图不合法的转换 TEXT 或BYTE数据类型.

 

这个叙述企图从TEXT或BYTE 的值转换到另一种数据类型, 例如, 在一个表达式中与

另一种类型的混合, 或将其插入另一种类型的栏中. 本系统不支持这种作业; TEXT 或

BYTE栏只能加以选取或拷贝到相同类型的栏.

检查叙述中你想要的字段是否具有你想要的数据类型.

 

 

-609    试图非法使用 Text/Byte 主机变量.

 

此叙述使用的主机变量是一个 TEXT 或 BYTE 定位器结构, 而却将此变量结合到其

它类型的数据 (例如用表达式, 或是将它插入另一类型的栏中). 这是不支持的动作,

这些类型的主机变量只能用来在同样类型的栏中做选取, 建立, 或是插入.

 

 

-610    blob 栏不能作为索引.

 

此 CREATE INDEX 叙述指名了一个 TEXT 或 BYTE 类型栏,

但是, 这些类型并不支持

索引功能. 因为这种类型没有定义的字汇顺序, 所以数据库服务器

不知道如何去排

序或比较. 因此数据库服务器无法建立一个转化索引. 如果您对这些

资料的了解足够,

可能可以从中撷取出一组顺序的关键值. 若是如此, 请将资料撷取到

同一表格中的一个

单独的栏, 然后建立那栏的索引.

 

 

-611    卷动游标无法选取 blob 栏.

 

在此叙述中指名的光标结合一个会传回一或数个 TEXT 或 BYTE 栏的 SELECT 叙述.

同时这个光标是以 SCROLL 关键词宣告的. 这是不支持的动作. 经由一个卷动游标所

取得的栏, 同时会储存在一个暂时的表格中. 因为 TEXT 和 BYTE 的值占据很大的

空间, 所以这个动作会造成大量的时间和磁盘空间的耗损. 请修改光标的宣告, 来选

择其它种类的栏,并选择 ROWID. 在利用卷动光标取回一栏之后, 请用一个单独, 非

卷动的游标来取回BYTE 或 TEXT 值, WHERE ROWID=host-var.

 

 

-612    在 "group by" 子句中不能使用 blob.

 

这个 SELECT 叙述选取了一或多个 BYTE 或 TEXT 值, 同时又在 GROUP BY 子句

中指定了那些栏. 这是不支持的动作. 因为 BYTE 或 TEXT 值没有已定义的字汇顺序,

因此数据库无法排列或比较. 所以数据库无法依各栏的值加以分类. (对于从 BYTE

或TEXT 栏中撷取出来的子字符串亦是如此.) 请检查您的 SELECT 叙述以便确定 GROUP

BY 中的栏名称是正确的.

 

 

-613    在 "distinct" 字符串中不能使用 blob.

 

此叙述指定了 DISTINCT 值, 但也选取了一个 BYTE 或 TEXT 值.

数据库服务器不知

道如何比较或排列这些值, 因此无法排序,

所以无法发觉是否有重复的值. 在您选取了

这些数据类型时, DISTINCT 这个关键词无法使用.

请修改 SELECT 叙述, 删除关键词

或是仅选择普通栏.

 

 

-614    不能在 "order by" 子句中使用 blob.

 

这个 SELECT 叙述选取了一或多个 BYTE 或 TEXT 值, 同时在 ORDER BY 子句中

指定了那些栏. 这是不支持的动作. 因为 BYTE 或 TEXT 值没有已定义的字汇顺序,

所以数据库服务器无法排列它们的顺序. (对于从 BYTE 或 TEXT 栏中撷取出来的子

字符串亦是如此.) 请检查您的 SELECT 叙述以便确定 ORDER BY 中的栏名称是

正确的.

 

 

-615    在这种表达式中, 不允许使用 blob.

 

此叙述使用了如下列的累积表达式: COUNT, SUM, MIN, MAX, 或 AVG, 但是却将它

应用到 BYTE 或 TEXT 数据类型的栏中. 这是不支持的动作. 检查函式的使用方式,

并检查它们是否仅使用在简单栏上.

 

 

-616    在此上下文中, 不允许使用 blob 下标.

 

此 UPDATE 或 INSERT 叙述指定了一个有下目标

BYTE 或 TEXT 数据类型栏做为

目的地. 下标符号方式在这里是不允许的, 您必须给予完整的

BYTE 或 TEXT (或其它)

值. 请修改此叙述再指定给所有的栏.

 

 

-617    TEXT 或 BYTE的数据类型必须附在这段上下文内.

 

这个叙述指定了非简单巨型对象的值到 TEXT 或 BYTE字段, 或指定 TEXT 或 BYTE栏

到不是简单巨型对象的栏. 不支持任何动作. 这两个动作均不支持. TEXT 或BYTE

的值必须是指定为整个单位到相同类型的栏. 检查叙述指定的栏是您所要指定的栏.

 

 

-618    拷贝 TEXT 或 BYTE数据时, 发生错误.

 

这个叙述是将 TEXT 或BYTE 的值从一列拷贝到另一列, 却遇到非预期的错误干

扰此项作业. 回复目前的交易. 检查伴随的 ISAM 错误码以获得更详细的信息;

可能是硬件的错误、储存空间或 tblspace 数据毁损、或磁盘空间不够, 或是命名

了不正确的储存空间. 若错误再度发生, 请记下所有的情况, 并联系 Informix技

术援部门.

 

 

-619    在前端 (front-end) 的应用程序中发生一个 blob 错误.

 

这个叙述在数据库和用户程序之间传送一个 BYTE 或 TEXT 值, 但此时发生了阻

碍, 例如可能无法为内存中的一个值配置缓冲区. 请检查伴随出现的 ISAM 错误

码以获取进一步信息.

 

 

-620    无法更新下一个延伸区块大小.

 

此内部错误显示数据库服务器无法改变储存在 root dbspace 的内部数据结构 (并非

系统目录). 请检查伴随出现的 ISAM 错误码以获取更多信息. 可能是 root

dbspace 发生毁损. 请让 OnLine 的管理员执行 tbcheck 或 oncheck 公用程序.

 

 

-621    无法更新新的锁定阶层.

 

此内部错误显示数据库服务器无法将共享锁定转换为独占锁定. 请检查伴随出现的

ISAM 错误码以获取更多信息. 有可能是硬件错误或共享记体的问题. 如果错误持续

发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-622    寻找限制索引 '索引名称' 时发生错误.

 

此内部错误显示数据库服务器正要测试一列新的

或修改过的内容, 看它在

UNIQUE 或 PRIMARY KEY 限制之下是否是唯一的,

但在此时发现找不到执行这个限制

的索引. 请检查伴随出现的 ISAM 错误码, 以获取进一步信息.

有可能是系统目录或

root dbspace 毁损, 或是发生硬件问题. 如果错误持续发生,

请记下所有的情况, 并且联

络 Informix 技术支持部门.

 

 

-623    找不到 CONSTRAINT  '限制名称' .

 

找不到叙述中所指定的限制. 请检查讯息中所显示名称的拼法. 如果拼法无误, 请依

下例查询 sysconstraints 表格,来检查目前的限制的名称. 如果所显示的拥有者名

称不是您的名称, 那么您必须是数据库管理者才能使用它 (而且, 如果此数据库是遵

循 ANSI 标准, 您还需将使用者名称附加到限制名称.)

SELECT constrname, owner FROM informix.sysconstraints

 

 

-624    无法移除 CONSTRAINT  '限制名称' .

 

此内部错误显示数据库服务器在移除限制或是

执行此限制的索引时, 发生了未预期的

错误. 请检查伴随出现的 ISAM 错误码, 获取进一步讯息.

有可能是系统目录或

root dbspace 毁损, 或是发生硬件问题. 如果错误持续发生,

请记下所有的情况, 并且

联络 Informix 技术支持部门.

 

 

-625    限制名称 '限制名称' 已经存在.

 

限制名称已经存在. 请检查其拼法. 如果拼法没错, 那么您就得选择另一个名称, 或

是移除并重新定义目前的限制. 请看错误 -623 的讨论, 以便得知如何列出所有的

限制.

 

 

-626    无法取得或是设定序列值

 

此内部错误讯息并不是指您所定义表格中某一 SERIAL 栏有问题.数据库服务器在许

多用法上都会利用到唯一的整数数值, (例如给新表格或更动过的表格一个 id 编

号). 内部错误会使得系统无法产生一个新的且唯一的号码. 例如, 在利用档案做锁定

的主机系统上, 可能有某些状况让锁定档案无法建立. 请检查连同此讯息出现的

ISAM 错误码, 以获取进一步讯息. 如果错误持续发生, 请记下所有的情况, 并且联络

Informix 技术支持部门.

 

 

-627    无法为两阶段准备协调者.

 

因为协调者无法进行 INFORMIX-STAR 两阶段确认交易, 所以一切相关的工作最后都

会被所有参与者回复. 不需要管理动作介入. 查看 ISAM 错误码, 以进一步了解为何

数据库服务器无法确认本地交易.

 

 

-628    协调者无法结束两阶段确认交易.

 

数据库服务器此时就扮演协调者, 因为这个交易无法结束 INFORMIX-STAR 两

阶段确认交易, 而交易则维持开启的状态. 最后, INFORMIX-STAR 自动复原机

具会加以结束. 不需任何人工的介入. 请参阅 ISAM 错误, 以获得数据库伺服

器不能适当结束交易的信息.

 

 

-629    无法结束启发式地回复交易.

 

数据库服务器此时就扮演协调者, 因为这个交易无法结束 INFORMIX-STAR 两

阶段确认交易, 而交易则维持开启的状态. 最后, INFORMIX-STAR 自动复原机

具会加以结束. 不需任何人工的介入. 请参阅 ISAM 错误, 以获得数据库伺服

器不能适当结束交易的信息.

 

 

-630    无法准备确认的数据库服务器 '服务器名称' .

 

所指定的 OnLine 数据库服务器无法准备与此 INFORMIX-STAR 两阶段确认交易相

关的本地交易. 可能一切相关的工作最后都会被所有参与者回复. 不需要管理动作介

入. 查看 ISAM 错误有关数据库服务器无法适当结束交易的原因以求得较多的讯息.

 

 

-631    不能够在非 BLOB 栏 '栏名称' 上建立光驱丛集.

 

您只能在 TEXT 或 BYTE 数据类型栏上建立光驱丛集.栏名称是其他的类型. 确定

此栏是您所指定的其中一个且重新检查表格的定义.

 

 

-632    无法建立光学丛集.

 

试图建立光驱丛集失败. 请查看 ISAM 错误以求得较多的讯息.

 

 

-633    无法移除光学丛集.

 

试图移除光驱丛集失败. 请查看 ISAM 错误以求得较多的讯息.

 

 

-634    对象不存在.

 

您正在尝试移除不存在的触发器. 请检查触发器名称的拼法. 您也可以查询

systriggers 系统注册表表格重新检查数据库里的触发器名称.

 

 

-635    非对象拥有人.

 

你正试图移除不是自己拥有的数据库对象. 应该要查询适当的系统目录表格, 瞭

解谁拥有该物件. (例如, 拿触发器来说, 查询 systriggers 表格.) 你可能需要要

求数据库对象的拥有者或数据库管理员来移除对象.

 

 

-636    键值字段的总尺寸太大或是有太多键值字段.

 

您已经违反了 CREATE OPTICAL CLUSTER

叙述中 ON 子句里的丛集键所指定的其中一个

限制, 如下列:

 *      合成丛集键的栏数目超过 16 个.

 *      CHARACTER 栏的长度超过 256 个字节.

 

 

-637    不能够变更光驱丛集.

 

试图变更光驱丛集的尺寸失败. 查看 ISAM 错误以求得较多的讯息.

 

 

-638    无法将 TEXT 或 BYTE栏丛集在非光学媒体上.

 

你只能在光学媒体上的 TEXT 或 BYTE栏, 建立光驱丛集. 请检查你未指定

TEXT 或 BYTE栏的名称于一般的储存空间.

 

 

-639    不能在非光盘媒体上丛集 blob 栏.

 

CREATE OPTICAL CLUSTER 叙述的 FOR 子句中所指定的全部 blob 栏必须属于相同的

光驱家族. 检查所指定给光驱丛集的栏不属于不同的家族.

 

 

-640    QPlan sanity failure  '行数目' .

 

执行 UPDATE STATISTICS 可能可以修正此内部错误.

如果错误继续发生, 请记下所有的

情况, 并且联络 Informix 技术支持部门.

 

 

-641    不能够保留/释放非光学媒体上的家族.

 

RESERVE 或 RELEASE 叙述里指定的家族名称必须存在于光学媒体之上. 检查您是否

在任何一个叙述中指定 dbspace 或 blobspace .

 

 

-642    家族名称必须要是字符字符串.

 

RESERVE 或 RELEASE 叙述里指定的光驱家族名称必须是字符 字符串, 或是用来运

算字符字符串的主机或程序变量. 如果您已指定字符字符串, 确定您已将它安放在引号

中.

 

 

-643    容量必须是个数字.

 

RESERVE 或 RELEASE 叙述里的容量自变量必须是 INTEGER 或 SMALLINT.

 

 

-644    FAMILY()、VOLUME() 和 DESCR() 需要光学媒体上的 BLOB 栏.

 

FAMILY()、VOLUME() 或 DESCR() 函数的自变量必须是储存在光学媒体上的

TEXT或 BYTE 栏. 检查未指定不同的数据类型栏, 或是在一般储存空间上储存

TEXT 或 BYTE栏.

 

 

-645    不能够保留容量.

 

试图用 RESERVE 叙述保留光盘容量失败. 查看见来自光驱子系统错误码 ( -7000

到 -7199 范围里的错误 ) 的错误以求得较多的讯息.

 

 

-646    不能够释放容量.

 

试图用 RELEASE 叙述释放要求的光盘容量失败. 查看见来自光驱子系统 (-7000

到 -7199 范围里的错误 ) 的错误以求得较多的讯息.

 

 

-647    数学函数馆函数 '函数名称' 运算错误.

 

自变量的数据类型是正确的, 但是传到此数学函数的值不适当. 请检查您传给函数的

值是合法的.

 

 

-648    不能够开启预储程序追踪的 DEBUG 文件.

 

尝试开启 DEBUG 追踪档案时发生错误.

当指定的 debug 文件名称的其中一个目录

不存在或目录是防止写入时就会发生错误.

请检查目录路径是正确的且informix 使用者

群集能够写到该目录.

 

 

-649    debug 档案的名称必须是 non-null CHAR 或 VARCHAR.

 

在 SET DEBUG 叙述中指定的 debug 文件自变量必须是字符数据类型.

 

 

-650    超过最大的 varchar 尺寸.

 

此叙述指定的 VARCHAR(m,r) 栏其宽度 m 超过最大容许值 (255). 请检查栏定义的

标点. 如果真的需要用到这么大的宽度, 请重新设计表格使用宽度不超过 255 的

VARCHAR.

 

 

-651    保留的栏尺寸 > 最大的栏尺寸 ( varchar ) .

 

此叙述指定的 VARCHAR(m,r) 栏其保留宽度 r 超过最大宽度 m. 请检查栏定义的

标点, 如果无误, 则请修改叙述使得 m > r.

 

 

-652    局部变量不允许默认值.

 

尝试以默认值定义局部变量. 只有广域变量和参数才能有默认值.

错误的范例如下:

DEFINE var INT DEFAULT 10; -- error

修正如下:

DEFINE var INT;

LET var = 10;

 

 

-653    宣告成 LIKE 的变量不能是广域变量.

 

广域变量已定义成 LIKE . LIKE 变量一定要是局部变量.

错误的范例如下:

DEFINE GLOBAL var LIKE tab.col; -- error

修正: 别和广域变量一起使用 LIKE 关键词. 而需清楚地指定数据类型.

 

 

-654    不当使用 PROCEDURE 宣告类型.

 

程序宣告用在参数或 RETURNING 子句. 预储程序不能够接受或传回的程序.

错误的范例如下:

CREATE PROCEDURE testproc (proc1 procedure ) -- error

        RETURNING procedure; -- error

        .

        .

        ..

END PROCEDURE

修正: 别尝试在参数或 RETURNING 子句里使用程序宣告类型.

 

 

-655    RETURN 值计数与程序宣告不符合.

 

RETURNING 子句中程序宣告传回值的数目与 RETURN 子句里的值数目不同.

错误的范例如下:

CREATE PROCEDURE testproc ()

        RETURNING INT, INT;

        .

        .

        ..

        RETURN 1,2,3; -- error

        .

        .

        ..

        RETURN 1; -- error

END PROCEDURE

修正: 在这个例子中, 只能传回正好二个自变量.

 

 

-656    未宣告例程可传回值.

 

宣告例程时, 并未包含 RETURNING 子句以表示例程不会传回任何值, 然而,

在例程主体中却找到 RETURN 叙述.

 

下列是错误的范例:

 

CREATE ROUTINE testproc() DEFINE a INT;

        LET a = 10;

        RETURN a + 1; -- error

        END ROUTINE

 

更正: 在 DEFINE 叙述之前, 增加 RETURNING 子句, 或是移除 RETURN 叙

述.

 

 

-657    无法在程序中再建立程序.

 

您不能够在 CREATE ROCEDURE 叙述中有 CREATE PROCEDURE

叙述.

 

 

-658    宣告成 GLOBAL 的变量需要一个默认值.

 

广域变量未给予默认值. 但广域变量需要一个默认值.

错误的范例:

DEFINE GLOBAL glob INT; -- error

修正:

DEFINE GLOBAL glob INT DEFAULT 10;

 

 

-659    SELECT 叙述需要INTO TEMP 表格.

 

SELECT 叙述没有指定该在那里放置传回值. 程序中的 SELECT 叙述需要有一个

INTO TEMP 或 INTO 字句参考到适当的程序变量.

错误的范例:

CREATE PROCEDURE testproc()

        .

        .

        ..

        SELECT col1, col2 FROM tab; -- error

END PROCEDURE

修正:

CREATE PROCEDURE testproc()

        .

        .

        ..

        SELECT col1, col2 INTO var1, var2 FROM tab;

        SELECT col1, col2 FROM tab INTO TEMP another_table;

END PROCEDURE

 

 

-660    循环变量 '变量名称' 不能修改.

 

在 FOR 叙述中试图修正循环变量的值. 而在循环中不能修改循环变量.

错误的范例:

FOR i IN (1,2,3,4)

        LET i = i + 1; -- error

END FOR

修正: 在 LET 叙述中使用其它的变量.

 

 

-661    变数的数目与值的传回数目不符合.

 

LET 叙述左半部的变量数目与右半部的值数目不符合.

错误的范例:

LET a,b = 10,20,39;

LET i,j = proc1()+proc2();

LET a,b = (SELECT c1 FROM tab)

修正: 使 LET 叙述两边的表达式的数目相等.

 

 

-662    循环变量 '变量名称' 指定超过一次.

 

循环变量在 FOREACH 叙述中使用超过一次.

错误的范例:

FOREACH SELECT col1, col2 INTO var, var FROM tab -- error

        .

        .

        ..

END FOREACH

修正:

FOREACH SELECT col1, col2 INTO var1, var2 FROM tab

        .

        .

        ..

END FOREACH

 

 

-663    您在呼叫程序 '过程调用' 时使用超过一个以上的程序-呼叫语法.

 

当呼叫一个程序时, 有指名一些自变量, 但其它没有.

错误的范例:

LET var = proc (arg1 = 10, 20, arg3 = 30); -- error

修正:

LET var = proc (arg1 = 10, arg2 = 20, arg3 = 30); --correct

LET var = proc (10,20,30);--correct

 

 

-664    系统函数的 function_name 自变量数目错误.

 

你已指定了不正确的函数名称自变量数目. 检查是否传送正确的函数自变量数目.

 

 

-665    '码 - 号码' -语意的上的内部的错误.

 

如果此内部错误不断发生, 请记录所有的情况, 并联络 Informix 技术支持部门.

 

 

-666    变量 '变量名称' 必须是宣告成 INTEGER 或 SMALLINT.

 

在一个 FOR 叙述中, 有包含范围的循环变量必须宣告成 INT 或 SMALLINT.

错误的范例:

DEFINE var CHAR(10);

        FOR var IN (e1, e2 TO e3, e4 ) -- error

        ...

END FOR;

修正: 因为 FOR 叙述包含范围操作数 ( TO 子句 ) , var 必须宣告

成 INT 或 SMALLINT.

 

 

-667    变量 '变量名称' 未宣告.

 

指定的变量未宣告. 检查未宣告变量的拼法以确定没有发生错误.

 

 

-668    无法执行系统指令.

 

在操作系统中, 系统呼叫失败. 下列范例是可能造成错误的叙述:

 

系统 'hello';

 

要确定系统指令是在路径上执行作业或执行该环境下的作业.

 

连接到数据库服务器时, 要确定你提供了用户 id 和密码. 数据库服务器必须

拥有用户的密码, 才能代表该用户执行指令.

 

在 Windows NT 平台上, 要确定下列的进阶使用者权利已被设定给使用者

"informix": 就像以操作系统的一部分的方式来执行; 增加配额; 替换处理层级

的记号.

 

 

-669    再度宣告变量 '变量名称' .

 

变量已经在相同的范畴中宣告两次. 查阅 <<-Informix Guide to SQL: -Tutorial,

Chapter 12>> , 有关程序变量范畴的一个解释.

 

 

-670    变量 '变量名称' 宣告成 SERIAL 类型.

 

SERIAL 数据类型不是合法的程序型式. 使用 INTEGER 数据类型以与

SQL SERIAL 数据类型相符.

 

 

-671    例程启动例程-名称具有重复的参数名称.

 

例程呼叫已命名该参数一次以上.

 

错误的范例:

 

LET var = proc (arg1 = 10, arg2 = 20, arg1 = 30);-- error

 

 

-672    不正确的数据结构执行树.

 

如果这内部错误再次发生, 请记下所有细节, 并联络 Informix 技术支持部门.

 

 

-673    例程的 routine_name 已经存在数据库中 .

 

你试图建立已在数据库中的例程. 若想建立该例程的新版本, 在建立例程的新版

本之前, 请先用 DROP ROUTINE 叙述来移除例程.

 

 

-674    未发现例程的 routine_name.

 

所呼叫的例程不在数据库中. 如果您启动例程, 在你执行准备的叙述之前, 你的

应用程序或另一个应用程序将例程移除, 就会得到这个错误.

 

 

-675    预储程序里有不合法的 SQL 叙述.

 

在程序中执行限制的叙述. 此错误发生在当程序被 SQL 数据操控叙述呼叫时.

错误的范例:

CREATE PROCEDURE testproc (arg INT, id INT)

        RETURNING INT;

        UPDATE tab SET col = arg WHERE key = id; -- error

        RETURN id;

END PROCEDURE;

SELECT col FROM tab WHERE testproc(tab.col, tab.key ) = 10;

修正: 不要使用限制的叙述 ( 如前述的 UPDATE 叙述 ) .

 

 

-676    不正确的检查限制栏.

 

在栏层级指定的检查限制只能参考到该栏. 如果要指定一个能扩及数个栏的检查限制,

请在表格层级指定此检查限制, 您不能以栏层级的检查限制跨到表格层级.

 

 

-677    检查限制不能够包含子查询或程序.

 

检查限制不能够有子查询或过程调用.

 

 

-678    检查限制里的栏 '栏-名称' 之下标不正确.

 

检查限制里具下目标栏其下标在栏的上下界外面. 请检查下标栏中指定的上下界不

超过栏的最大长度, 如果您知道栏所属的表格名称, 您可以使用下列的子查询来查询

系统目录, 找到栏的最大长度.

SELECT collength FROM syscolumns WHERE colname =

        'column-name'

        AND tabid =

        (SELECT tabid FROM systables WHERE tabname =

                'table-name')

 

 

-679    不能够读取限制 '限制名称' 的违反限制的资料.

 

查看 ISAM 错误以求得较多的讯息. 如果此内部错误不断发生, 请记录所有的情况并

联络 Informix 技术支持部门.

 

 

-680    不能够写入限制 '限制名称' 的违反限制的资料.

 

查看 ISAM 错误以求得较多的讯息. 如果此内部错误不断发生, 请记录所有的情况并

联络 Informix 技术支持部门.

 

 

-681    INSERT 清单中的栏指定超过一次.

 

如果用户在 INSERT 栏清单中指定栏名称超过一次, 这错误就会发生.

 

 

-682    读取表格 '表格名称' 上的限制索引时发生错误.

 

系统不能够验证此限制. 查看 ISAM 错误以求 得更多的讯息. 如果此内部错误不断

发生, 请记录所有的情况并联络 Informix 技术支持部门.

 

 

-683    所指定的 STEP 表达式将不会通过 RANGE.

 

在 FOR 叙述中的 STEP 表达式的运算后的值将会导致无穷的循环.

错误的范例:

FOR i = 10 TO 20 STEP -1; -- error

        ...

END FOR

修正: 改正范围或 step 表达式使递增值在范围里面.

 

 

-684    函数 routine_name 传回太多值.

 

自函数中传回值的数目大于呼叫者期望的数目 .

 

错误的范例:

 

CREATE ROUTINE testroutine(arg INT) RETURNING INT, INT;

        RETURN 1,2;

        END ROUTINE

 

SELECT col FROM tab WHERE col = testroutine(1); -- error

 

 

-685    函数的 function_name 传回的值太少.

 

自函数中传回值的数目少于呼叫者期望的数目.

 

错误的范例:

 

CREATE ROUTINE testroutine (arg INT) RETURNING INT, INT;

        RETURN 1,2;

        END ROUTINE

 

UPDATE tab SET (c1, c2, c3) = (testroutine(1)); -- 错误

 

 

-686    函数 function-name 传回超过一列的资料.

 

函数传回数列的值 (例如, 以 RETURN...WITH RESUME 执行), 而呼叫者仅预

期一列的值.

 

错误的范例:

 

CREATE ROUTINE testroutine (limit INT) RETURNING INT;

        DEFINE i INT;

        FOR i IN (1 TO limit) RETURN i WITH RESUME;

        END FOR

        END ROUTINE;

 

CREATE ROUTINE gettest() DEFINE var INT;

        LET var = testroutine (10); -- error

        END ROUTINE

 

 

-687    在追踪预储程序之前设定 debug 档案.

 

在 SET DEBUG FILE 叙 述之前执行 TRACE 叙述 ( 除 TRACE OFF 外 ). 而无法

知道 TRACE 叙述输出的去向.

错误的范例:

TRACE procedure; -- error

修正:

SET DEBUG FILE TO 'trace.out';

TRACE procedure;

 

 

-688    变量 '变量名称' 必须宣告成 CHAR 或 VARCHAR.

 

您把变量宣告成 CHAR 或 VARCHAR 以外的数据类型, 更正宣告后再尝 试一次.

 

 

-689    广域变量 '变量名称' 宣告不一致.

 

二个或多个的程序以不同的数据类型定义相同的广域变量.

错误的范例:

CREATE PROCEDURE test1()

        DEFINE GLOBAL glob INT DEFAULT 10;

        ...

END PROCEDURE

CREATE PROCEDURE test2()

        DEFINE GLOBAL glob CHAR (9 ) DEFAULT USER;

        ...

END PROCEDURE

修正: 广域变量宣告要一致. ( 使用适当的命名惯例是有用的 ). 两个相同数据类型

的变数, 若长度不同将视为不一致.

 

 

-690    不能够读取来自参考表格 '表格-名称' 的键.

 

无法验证此参考限制. 查看 ISAM 错误以求得比较多的讯息. 如果您正在使用连

串删除, 数据库登录必须是开启的.

 

 

-691    找不到参考的限制 '限制名称' 的参考表格键.

 

违反了参考限制. 这种情况通常发生在当您正尝试插入一个值或更新一属于参考限制

部份的栏值时. 您要输入的值并不存在此参考栏 (母键) 中. 如果您正在使用连串删

除, 数据库登录必须是开启的.

 

 

-692    限制 '限制名称' 的键值仍被参考中.

 

您违反了参考限制. 这种情形通常发生在当您正尝试删除另外的列 ( 子键 ) 正在参

考的栏 ( 母键 )  里的列时. 如果您正在使用连串删除, 数据库登录必须是开启的.

 

 

-693    系统指令期待一个非空值.

 

传到 SYSTEM 叙述的值是空值.

错误的范例:

DEFINE c CHAR(100);

        LET c = NULL;

        ...

SYSTEM c; -- error

 

 

-694    太多自变量传到程序 '程序名称' .

 

传到程序的自变量超过程序宣告所能接受的数目.

 

 

-695    自变量不是程序 '程序名称' 的一个参数.

 

指名传给程序的参数并不存在.

错误的范例:

CREATE PROCEDURE testproc (arg1 INT, arg2 INT)

        RETURNING INT;

        ...

        RETURN 1;

END PROCEDURE

SELECT col FROM tab WHERE testproc (arg1 = 10, arg5 = 20);

-- error       

 

 

-696    变量 '变量名称' 有未定义的值.

 

在指定值之前参考了 SPL 变量, 或是设定了列字段.

 

错误的范例:

 

DEFINE my_row_var1 (last_name CHAR(20), id INTEGER);

DEFINE i, j INT;

 

LET i = j + 1;                -- 错误

LET my_row_var1.id = new_id;  -- 错误

 

然而

 

LET my_row_var1 = ROW(NULL::CHAR(20), NULL::INTEGER)::person_rt;

LET my_row_var1.id = new_id;  -- 成功

 

修正: 在您使用所有变量与参数之前, 指定有效的变量与参数值.

 

列类型变量可用在储存例程 (SPL) 中. 这种变量必须在使用之前先初始化.

若要初始化列类型变量, 您必须要初始化整个变量. 对每个的字段进行初始

化无法替代初始化整个变量, 且事实上除非您初始化了整个变量, 否则您是

无法初始化个别的字段. 下列范例可显示 SPL 中列类型变量的正确与不正确

初始化.

 

-- 范例显示 SPL 中的列类型变量必须初始化整个变量. 只初始化

-- 字段而不初始化整个变量是不够的.

 

 

   CREATE DATABASE tango;

 

   drop table table1;

   drop row type person_rt restrict;

   drop function create_person_rt;

  

   CREATE ROW TYPE person_rt (last_name CHAR(20), id INTEGER);

  

   CREATE FUNCTION create_person_rt(new_name CHAR(20), new_id INTEGER)

   RETURNING person_rt;

   DEFINE my_row_var1 person_rt;

   -- 在初始化整个变量之前, 您无法初始化个别的字段. 若于此时执行下列的

   -- 叙述, 则会造成错误 -696 的失败.

   -- LET my_row_var1.id = new_id;  

   -- 初始化整个变数.

   LET my_row_var1 = ROW(NULL::CHAR(20), NULL::INTEGER)::person_rt;

   -- 现在设定个别的字段.

   LET my_row_var1.id = new_id;

   LET my_row_var1.last_name = new_name; 

   RETURN my_row_var1;

   END FUNCTION;

   

-- 范例用法:

 

   CREATE TABLE table1 (person_column person_rt);

   INSERT INTO table1 (person_column) VALUES (create_person_rt('Uhuru', 128));

   

   CLOSE DATABASE;

 

   您必须初始化整个变量, 因为引擎可追踪是否已初始化整个变量, 但无法

   逐一字段地追踪初始化作业.

 

 

-697    STEP 表达式运算后为 ZERO.

 

FOR 叙述中的 STEP 表达式运算后为零.

错误的范例:

LET e = -1;

FOR i = 10 TO 20 STEP e+1; -- error

...

END FOR

修正: 改变 STEP 表达式使其运算后为非零值.

 

 

-698    不一致的交易. 服务器数目和名称回复-服务器.

 

若 INFORMIX-START 两阶段确认或分布式交易是以混合的结果来执行, 就会

传回这个讯息. 也就是说, 有些参与交易的数据库服务器已回复其广域交易部

分, 但其他数据库服务器则确认自己广域交易的部份. 回复工作的数据库服务器

数目向来是准确的, 但服务器名称的清单 (由 DBSERVERNAME 值来指定) 并不完整.

若有大量的服务器回复工作, 清单必会被截短以节省空间. 参考协调者

数据库服务器的讯息登录, 来寻找完整的服务器名称清单. 若传回此错误讯息,

你必须考虑你的网络数据库系统处于不一致的状态. 这个程序在Administrator's

Guide中有详细的说明.

 

 

-699    启发式地回复交易.

 

如果 INFORMIX-STAR 两阶段的确认交易是被所有参加的 OnLine 数据库服务器

启发式地回复, 这个讯息将传回. 因为所有的数据库服务器回复此交易, 网络的

数据库系统还能保持一致.

 

 

-700    广域交易里的叙述不正确.

 

当用户尝试在广域交易中执行 BEGIN WORK, COMMIT WORK, 或 ROLLBACK

WORK 叙述的时候, 这个错误就会产生.

 

 

-701    在 XA 环境里面之叙述不正确.

 

当您尝试在 X/Open 分布式事务处理环境里面执行下列之中的任何一个叙述的时候,

这个错误就会产生:

*       CLOSE DATABASE

*       CREATE DATABASE

*       DROP DATABASE

*       SET LOG

在这个环境中您可以随着 xa_open 之后执行一个单一数据库叙述的方式来指定

现行的数据库. 然而, 在数据库选取之后, 不能执行其他的 DATABASE 叙述

当您尝试执行第二个 DATABASE 叙述的时候, 这个错误就会产生.

 

 

-702    不能够在排他模式里开启数据库.

 

在 X/Open 分布式事务处理环境中, 您不能够以排他模式开启一个数据库.

 

 

-703    在表格的 table_name 上的主键有 null 键值的字段.

 

企图在已经是主键的栏里插入一个 null 值, 或者新增主要限制到表格中, 该表

格在键栏之一中具有NULL值.

 

 

-704    主键已经存在于表格上.

 

一个表格只能有一个主键.

 

 

-705    无法移除/修改程序的程序名称. 该程序目前正使用中.

 

你试图移除目前正执行的程序, 或者就是在并行执行的程序中执行 UPDATE

STATISTICS . 若一个程序试图自行移除或巢状的程序试着移除呼叫其本身的程

序, 就会发生这个情况.

 

错误的范例:

 

   CREATE PROCEDURE testproc()

   ...

   DROP PROCEDURE testproc; -- error

   END PROCEDURE

 

更正: 你可使用 ON EXCEPTION 叙述来捕捉这个错误, 且不要完成 DROP

PROCEDURE 或 UPDATE STATISTICS 叙述.

 

若你试着要移除函数索引使用的函数或程序, 这个错误也会发生.

 

 

-706    于程序 procedure-name上的执行程序遭拒.

 

未拥有程序的用户或不为 DBA 的使用者必须具有 '执行' 权限, 才能执行程

序.

 

 

 

-707    光驱丛集里的 blob 栏必须是独一的.

 

在 CREATE OPTICAL CLUSTER 叙述的 FOR 子句的栏清单中相同的栏

指定超过一次. 请改变您的叙述使栏出现不超过一次.

 

 

-708    光驱丛集 '丛集名称' 已经存在.

 

您尝试用已存在丛集的名称建立新的光驱丛集. 您必须移除已存在的丛集, 或使用

不同丛集的名称重新执行您的叙述.

 

 

-709    已丛集BLOB 栏 '栏名称'.

 

您已经使用指名的 BLOB 栏建立一个光驱丛集. 因为单一 BLOB 栏只能是一部

光驱丛集的一部份, 您试图在这个栏上建立新的丛集会失败.

 

 

-710    表格 '表格名称' 已移除, 更改, 或重新命名.

 

这个错误会随着已备妥的叙述发生. 这些叙述的格式为:

PREPARE statement id FROM quoted string

数据库服务器中的叙述准备好之后, 在使用者执行它之前,

表格已经重新命名或

更改, 可能改变了表格的结构. 因而可能发生问题.

这个错误也会随着预储程序发生.

在数据库服务器第一次执行新的预储程序之

前, 会优化已预储程序中的码 (叙述).

优化使得码是依程序参考的表格结构而定.

如果表格结构在程序优化之后, 但在执行之前改变, 就会发生这个错误.

每个程序都会在第一次执行 (不是建立时) 时优化. 这表示预储程序在第一次

执行会成功, 但在稍后同样的情况下会失败.

预储程序的失败可能是断断续续的, 因

为在执行中的失败会强迫内部警告在下一次执行时重新优化.

数据库服务器会保存已预储程序参考的表格列表.

每当此明确的参考表格修改时,

数据库服务器就会在程序下一次执行时重新优化程序.

然而, 如果预储程序只间接根据参考的表格,

则在表格变更之后, 数据库服务器

无法侦测出重新优化程序的要求.

例如, 如果预储程序启动了触发器, 表格就

可以间接参考. 如果触发器参考

(但没有直接被预储程序参考) 的表格变

更, 数据库服务器不会知道在执行之前需重新优化预储程序.

当程序在表格变

更后执行时,就会发生这个错误.

使用两种方法之一来复原此错误:

*       发送 UPDATE STATISTICS 叙述强迫重新优化此程序.

*       传回此程序.

若要避免错误发生, 您可以强迫重新优化预储程序.

若要强迫重新优化, 请

执行下列的叙述:

UPDATE STATISTICS FOR PROCEDURE procedure name

您可以使用下列方法将此叙述加入您的程序中:

*       将 UPDATE STATISTICS 叙述放在改变对象模式的每个叙述之后.

*       将 UPDATE STATISTICS 叙述放在每个已预储程序的执行之前.

为了更有效率, 您可以将 UPDATE STATISTICS

叙述和程序中最不常发生的动作

放在一起 (对象模式的变更, 或程序的执行). 在大部份的情况中,

程序中最不常发生

的动作是对象模式的变更.

当您遵循回复此错误的方法时,

必须在每个间接参考变更表格的程序中执行 UPDATE

STATISTICS 叙述, 除非程序也明确地参考该表格.

您也可以只重新执行预储程序来回复此错误.

当预储程序第一次失败时,

数据库服务器就会将该程序标示为需要重新优化.

下次您执行程序时, 在执行之前, 资

料库服务器就会重新优化该程序.

然而, 执行两次预储程序, 可能既不切实际又

不安全. 较安全的选择是使用 UPDATE STATISTICS

叙述强破重新优化程序.

 

 

-711    无法插入编码过的 BLOB 叙述指针.

 

您试图经由 DESCR() 函数插入编码过的 BLOB 叙述指针失败. 查看 ISAM 错误以

求得更多讯息.

 

 

-712    不能将编码过的 BLOB 叙述指针插入非光盘 BLOB 栏中.

 

您已经尝试使用 DESCR() 函数在储存于 dbspace 或 blobspace 内的

TEXT 或 BYTE 栏插入编码过的 BLOB 叙述指针. 您只能使用这个函数在

储存于光盘媒体上的 BLOB 栏之内插入叙述指标.

 

 

-713    无法将编码过的 BLOB 叙述指针译码.

 

将 blob 叙述指针插入数据列之前的译码失败. 查看光驱子系统的错误码

(7000 到 7199 范围中的错误 ) 以求得较多的讯息.

 

 

-714    无法将 BLOB 叙述指针编码.

 

要储存在光盘媒体上的 BLOB 叙述指针的编码失败. 请查看光驱子系统的错误码

(从 -7000 到 -7199 的范围) 以求得较多的讯息.

 

 

-715    交易状态错误.

 

发生在抓取交易状态时的错误. 查看 ISAM 错误以求得更多讯息.

 

 

-716    可能不一致的交易. 未知的服务器在 '服务器 - 名称 - 清单' 中.

 

在扮演协调者的 OnLine 数据库服务器决定确认或回复两阶段确认的交易后任何

时间内, 若数据库管理员用 tbmode 或 onmode -z 删除其程序, 处理线串或会期

时就会出现此错误. . 您必须检查在每一个未知的数据库服务器 OnLine 讯息

登录或 OnLine 逻辑登录以决定是否区域性的交易已确认或回复. 如果一些

OnLine数据库服务器回复交易, 且其他的确认交易, 您必须决定是否您的网络

数据库系统是在一种不一致的状态. 这个程序在 INFORMIX-OnLine

Administrator's Guide (或 6.0版之 INFORMIX-OnLine Dynamic Server

Administrator's Guide) 有详细的描述.

 

 

-717    传到系统函数 '函数名称' 的自变量不正确.

 

一个不正确的数据类型传到算术函数 (HEX(), TRUNC(), ROUND()).

 

 

-718    当广域交易暂时中止时, 叙述不正确.

 

如果一个 OnLine 数据库服务器当成 X/Open 分布式事务处理环境中的 Resource

Manager 已经暂时中止交易的时候, 它的下一个的叙述一定要是 xa_start .

所有其他的叙述都不允许.

 

 

-719    循环变量 '变量名称' 不能宣告成 GLOBAL.

 

广域变量不能当做循环变量用. 重新定义变量使它成为循环的局部变量,

或使用另外的 (区域 ) 变量当做循环变量.

 

 

-720    FOREACH SELECT 里的栏数目不符合变数数目.

 

SELECT 传回的栏数目和 INTO 列表中指定的变量不符合 . 改正 INTO 清单中的

变数数目.

 

 

-721    预储程序 '程序名称' 不再正确.

 

您尝试要从 EXECUTE 叙述执行的程序, 但在 PREPARE 叙述执行后已经

重新定义. 您必须在 EXECUTE PROCEDURE 叙述之上再使用 PREPARE

叙述一次.

举例来说, 下列的原始码将会引起这个错误:

$prepare pr_stat from `execute procedure testproc()';

        ...

                 /* drop procedure testproc

                        create procedure testproc() ......

                        [same application or different]

                */

        ...

$execute pr_stat;               /* triggers error -721 */

 

 

-722    用尽堆栈空间.

 

服务器已用做为尽堆栈空间之内存. 请要求 Informix 数据库管理员增加

$ONCONFIG(or $TBCONFIG ) 档内 STACKSIZE 指定的参数以分配较多内存.

要使改变生效一定要再重新启动 OnLine.

 

 

-723    不能够中止符合 ANSI 标准的数据库里的登录.

 

您尝试使用 START DATABASE <database> WITH NO LOG 语法移除符合

ANSI 标准的 SE 数据库上的数据库登录. 您不能在这类的数据库上藉由执行

此叙述关闭登录.

 

 

-724    找不到系统初始化档案 $INFORMIXDIR/cnv50t60.sql.

 

检查 $INFORMIXDIR/cnv50t60.sql 存在且是可读的. 如果是这样而且系统仍然失败,

请重新安装系统.

 

 

-725    读取系统初始化档案 -$INFORMIXDIR/cnv50t60.sql. 时发生错误.

 

检查脚本档案 $INFORMIXDIR/cnv50t60.sql 是可读的. 如果它是可读的而且故障仍

然发生, 请重新安装产品.

 

 

-726    dbinfo() 之第一个自变量必须是引号内字符串常数.

 

检查 dbinfo() 之第一个自变量符合下列其中之一的引号内字符串值:

'dbspace', 'sqlca.sqlerrd1', 或 'sqlca.sqlerrd2'.

 

 

-727    传给 dbinfo(dbspace) 不正确的或 NULL tblspace 号码.

 

您用 'dbspace' 字符串当作第一参数呼叫 dbinfo() 函数. 您必须提供正确的

tablespace 号码或运算出此号码的表达式当作第二个参数. 检查您已经提供当

做第二参数的号码, 而且它符合正确的表格空间的号码.

 

 

-728    未知的 dbinfo '自变量名称' 的第一个自变量.

 

dbinfo() 函数之正确自变量是引号内字符串 'dbspace' 跟随着正确表格空间格式

的号码, 或跟随下列两个值之一: 'sqlca.sqlerrd1' 或 'sqlca.sqlerrd2'.

确定您已经提供这些值其中一个, 且已经将字符串放在引号内.

 

 

-729    触发器没有触发动作

 

您的 CREATE TRIGGER 叙述不包含一个触发动作. 增加触发动作清单到触发

器定义中然后再执行 CREATE TRIGGER 叙述.

 

 

-730    如果触发器没有 FOR EACH ROW 就不能够指定 REFERENCING.

 

您在一个未包括 FOR EACH ROW 触发动作区段的 CREATE TRIGGER 叙述里

包含了 REFERENCING 子句. 除去 REFERENCING 子句, 或者适当的话增加

遗漏的关键词 FOR EACH ROW, 其后跟着在那个时间要发生的触发动作.

 

 

-731    在触发器主体内使用不正确的栏参照.

 

对于插入和删除触发器而言, 错误的栏使用在 EXECUTE PROCEDURE

叙述 (只允许一个更新触发器 ) 的 INTO 子句中. 移除 INTO 子句中的栏名称.

 

 

-732    在触发器内使用不正确的旧或新的关连名称.

 

您不能够在 FOR EACH ROW 区段外或 EXECUTE PROCEDURE 叙述的 INTO 子句

内使用新或旧的关连名称. 使用新或旧的关连名称来附加到 SELECT COUNT DISTINCT

栏也是不正确的. 举例来说, 下列的叙述将传回这个错误 :

SELECT COUNT (DISTINCT oldname.colname)

您不能够为插入触发器指定旧的关连名称. 您也不能为删除触发器指定新的关连名称.

 

 

-733    在 CREATE TRIGGER 或 CREATE VIEW 叙述中, 无法参考程序的变量.

 

储存程序内有 CREATE TRIGGER 或 CREATE VIEW 叙述, 且在 CREATE TRIGGER 或

CREATE VIEW 叙述中, 您参考储存程序中定义的变量. 此动作不合法. 将程序变量

的参考从 CREATE TRIGGER 或 CREATE VIEW 叙述中移除, 并再试一次.

 

 

-734    对象名称与旧或新的关连名称值符合.

 

这个错误将在下列三种情况下传回:

*       如果触发表格或同义字 (如果有使用的话) 的名称与 REFERENCE 子句

        中旧或新的关连名称符合.

*       动作子句中参考的表格或同义字名称与 REFERENCE 子句内旧或新的

        关连名称符合.

*       旧的关连名称与新的关连名称符合.

请改变关连名称或表格名称然后再执行 CREATE TRIGGER 叙述一次.

 

 

-735    不能够参考有参与连串删除的表格.

 

如果子表格被属于 DELETE 叙述的一部份之关连子查询参考, 则那子表格就不能是

连串删除的其中一个表格. 因为结果仰赖处理列的次序, 所以这作业不允许. 重写您

的查询使得不在相互关连子查询里参考子表格.

 

 

-736    解析对 LOW 模式不具意义.

 

因为数据分布只有建构在 MEDIUM 或 HIGH 模式, 指定解析是没有意义的. 移除

RESOLUTION 子句或从 LOW 模式改变到 MEDIUM 或 HIGH.

 

 

-737    可靠度对 HIGH 模式不具意义.

 

从叙述中移除可靠度值, 也就是说如果犯错的叙述是:

UPDATE STATISTICS HIGH RESOLUTION 0.1 0.99;

就将他改成 UPDATE STATISTICS HIGH RESOLUTION 0.1 ;

如果您要用基于样本的分布而不用使用栏中所有数据的分布, 您应该以 MEDIUM

替换 HIGH.

 

 

-738    DROP DISTRIBUTIONS 只有在 LOW 模式中是正确的.

 

默认中, LOW 模式不会除去分布, 因此需要 DROP DISTRIBUTIONS 子句. 如果您要

除去 HIGH 或 MEDIUM 分布, 那么使用 DROP DISTRIBUTIONS 子句.

 

 

-739    可靠度必须是在范围(含) [0.80, 0.99] 之间.

 

如果想要的可靠度值大于 0.99 , 使用 HIGH 模式. 小于 0.80 的值是不允许的,

因为它将可能会产生不良的分配. 如果您正在利用减少可靠度来减少

更新统计指令执行的时间, 您就应该考虑使用比较大的分辨率值.

 

 

-740    解析必须大于 0.005 且小于或等于 10.0 .

 

这个参数的值决定数据分布如何精细地解决. 10.0 的解析暗示任何单一选取过

滤器的应用程序估计的准确度将被限制到 (加或减) 百分之 5. 大于 10.0 的值

对于提供有关数据分配的充份明细没有多少价值.

 

 

-741    相同 instance 之触发器已经存在.

 

您正在建立一个 instance 触发器, 但那个 instance

已经存在另外的触发器. 在一个

表格上您只能有一个插入或删除触发器. 如果您正在定义更新上

发生的多重

触发器, 在 UPDATE 叙述中的栏清单一定是互斥的.

您不能够在多于一个

UPDATE 子句中指名同一个栏当做触发栏.

 

 

-743    在数据库中对象 '对象名称' 已经存在.

 

您正尝试定义在数据库已经存在的对象.

 

 

-744    触发器中有不合法的 SQL 叙述.

 

当触发的 SQL 叙述是 BEGIN WORK, COMMIT WORK, ROLLBACK WORK, 或

SET CONSTRAINTS 的时候, 这个错误会传回. 这些叙述不允许当做触发动作.

移除错误的叙述.

 

 

-745    触发器执行失败.

 

这个讯息为一般的使用定义, 适用于您所指定触发动作的预储程序叙述中的

错误条件.

 

 

-746    讯息字符串

 

你为这个讯息补充了讯息字符串. 你指定的储存程序产生了错误情况时, 便可以用

这个讯息. 这个错误的更正动作取决于造成这个错误的情况. 身为使用者的你,

可针对情况和讯息本文来定义.

 

 

-747    表格或栏与触发叙述中参照的对象符合.

 

当触发 SQL 叙述作用于触发表格时, , 或当两个叙述皆是更新以及

触发动作更新的栏与触发叙述更新的栏相同的时候这个错误会传回.

 

 

-748    超过连串触发器最大的数目极限.

 

您超过连串触发中器的最大数目 61 .您可能在设立触发器时并没有了解它. 您可

以查询 systriggers 系统注册表表格找到数据库中存有什么触发器. 您亦可考虑藉

着将初始触发器的动作子句放置到预储程序中并且使用 SPL TRACE 叙述进行追踪

触发动作.

 

 

-749    在 5.01 版之前的服务器不允许远程光标作业.

 

触发叙述或光标作业已经被外部的 5.01 版之前的数据库服务器送出. 这是不允许的.

 

 

-750    '表格名称' 发现不正确的分布格式.

 

此内部错误不应该发生, 除非数据库在某些方面已经毁损. 使用

UPDATE STATISTICS 重建分布. 如果错误重现, 请记录所有的情况并联络

Informix 技术支持部门.

 

 

-751    5.01 版以前的服务器不允许执行远程程序.

 

触发器的动作子句包含一个不在数据操控叙述里呼叫的预储程序, 而且该程序将

会被外部的 5.01 版之前的数据库服务器执行. 这个操作是不合法的. 在资料操控

叙述里面呼叫的预储程序被限制执行某些 SQL 叙述, 包括交易相关的叙述. 交

易相关的叙述在做为触发动作的预储程序里面是不允许的. 5.01 版以前的数据库

服务器无法检查该项, 所以此程序不允许. 如果可能的话, 请在 5.01 或更新版的

数据库服务器上执行该程序.

 

 

-752    所有的 Smart Disk 装置都在忙碌中.

 

等待片刻再重试您的 Smart Disk 作业.

 

 

-753    存取遭拒-超过单一使用者限制.

 

只授权一个使用者; 多个用户不能同时使用该产品. 如果您正从远程机器

使用该产品, 该产品只允许在非网络环境使用; 如果您从本地机器使用产

品, 那么等到现有的使用者退出后再试一次.

 

 

-754    不能够存取许可证文件.

 

系统找不到用户许可证文件. 使用者许可证文件可能没有安装好, 或安装不正确.

也许, 您可能没有存取使用者执照档案的正确档案或目录访问权限. 参阅您的

安装说明文件.

 

 

-755    不能够存取许可证文件以释出授权.

 

您可能没有此特别动作的适当的访问权限. 请询问系统管理员.

 

 

-756    评估版已到期.

 

这种评估版的产品只能在指定的一段的时间中使用. 让您能评估产品, 但是不能

永久地使用它. 当版本期满的时候, 请联络 Informix, 订购该产品的标准版本.

 

 

-758    不能够隐匿地重新连结到新的服务器 '服务器名称' .

 

如果您使用 CONNECT TO 叙述去连接服务器, 您就不能用 DATABASE 叙述的其

中一种, 也就是 DATABASE, START DATABASE 等等, 来隐匿地重新连接其它的

服务器. 您必须用 SET CONNECTION 叙述来转换到另一个服务器.

 

 

-759    无法在外显示的数据库连接上使用 database 指令.

 

若使用 CONNECT TO database@server 语法来连接到数据库和服务器, 必须在中断

现有的连接之后, 才能选择另一个数据库.

 

 

-761    INFORMIXSERVER 无法与 DBSERVERNAME 或

        DBSERVERALIASES 相符.

 

您的 INFORMIXSERVER 环境变量与 DBSERVERNAME 或您正在尝试

连接到服务器的 ONCONFIG 组态档案里的任何一个 DBSERVERALIASES

设定无法匹配. 检查您的环境变量和 ONCONFIG 组态档案. 检查

INFORMIXSERVER 与 ONCONFIG 档案里的其中一个设定相符.

 

 

-762    在叙述剖析期间发生堆栈溢出.

 

这个错误表示 SQL 语法分析器里的内部记忆已经达到最高限. 如果您的查询

包含许多巢状的表达式, 错误就会发生. 举例来说, 查询包含 WHERE 子句里

的许多 ANDs和/或 ORs. 若要避开此现象, 您就必须重写查询以除去一些巢状

的表达式.

 

 

-763    稽核环境初始化错误.

 

这是个当使用者试着去连接到一个有安全性保护的数据库服务器时显示问题的万用讯

息. 联络您的安全管理员或 DBA 看该如何做.

 

 

-764    只有 DBA 能在此模式中执行数据库的更新统计.

 

您已经尝试在 LOW 之外的模式里对整个数据库执行有 DROP DISTRIBUTIONS 子

句的 UPDATE STATISTICS 叙述. 只有用户 informix, 或数据库管理员能如此做.

 

 

-765    不能 EXECUTE 已经被 DECLAREd 的叙述

 

您不能够执行已经宣告的 PREPARED 叙述. 然而能由使用 EXECUTE INTO

(或EXECUTE PROCEDURE INTO) 指定输出变量给已准备的一个 SELECT 叙述,

来不必执行 DECLARE, OPEN, 和 FETCH叙述.

 

 

-766    字符串必须以 null 结束.

 

在 INFORMIX-ESQL/C, 如果您在 INSERT 叙述里,

或在一个 SQL 叙述的 WHERE

子句中使用了主机变量, 而且数据库是符合 ANSI 标准 的,

字符串必须是以 null 结束.

 

 

-768    routine-name 例程里的内部错误.

 

这是个内部的错误. 如果错误再度发生, 请记录所有的情况并且联络

Informix 技术支持部门.

 

 

-791    不能够开启 Informix 密码文件.

 

检查 INFORMIXDIR 环境变量, 以确定它设定成正确的值. 也检查 Informix 密

码档 INFORMIXDIR\ETC\PASSWD. 如果 Informix 密码文件已损毁或删除, 请重新安装

INFORMIX-SE 数据库服务器.

 

 

-795    发现插断时错误错误. INFORMIX-NET for Windows TSR 可能没载入.

 

如果您想要透过网络与 INFORMIX-OnLine for NetWare

数据库服务器通讯, 您必须

在 DOS 环境中执行

INETIPX.EXE TSR(terminate-and-stay-resident program). 并确定

您有充足的内存以加载此 TSR.

 

 

-801    SQL 编辑器缓冲区已满.

 

文本编辑器因为没有更多的数据空间内存可供使用, 因此不能够扩张缓冲区以储存

您的 SQL 叙述. 如果您在缓冲区中有多个叙述, 一次执行一个.

 

 

-802    无法开启欲执行的档案.

 

您所指定的 SQL 脚本文件案不能开启以读取. 重新查看指定的文件名. 如果它是

如您所拼的字, 确定它存在于现有的目录或 DBPATH 环境变量中指名的目录, 而且

您的账户已有该档的读取访问权限.

 

 

-803    这档案对内部的编辑来说太大了.

 

您在 Choose 选项下选取的 SQL 脚本文件案太大, 而不能包含在编辑缓冲区. 编辑

缓冲区的大小是动态的, 而程序不能够配置到足够的内存以包含脚本文件案的内容.

(在 DOS 下如果脚本文件超过 64k, 这个错误一样会显现.) 确定您所指定的档案,

而且它真的是 SQL 脚本文件案. 如果它是您所要的档案, 将其分开成比较

小的部份, 而且分开地使用他们.

 

 

-804    批注没有结束.

 

这个叙述包含用大括号 { } 括起来的批注, 但是遗漏闭合大括号. 重新检查叙述

的标点并且确定所有的大括号是成对出现的.

 

 

-805    无法开启欲载入的档案.

 

不能开启在 LOAD 指令指定的输出文件. 检查伴随的 ISAM 错误码以获得较多的

讯息. 可能的原因包含: 需要较完整的路径名称; 档案不存在; 您的账户没有读取

该文件或该文件所在目录的权限.

 

 

-806    无法开启欲卸除的档案.

 

不能开启在 UNLOAD 指令指定的输出文件. 检查伴随的 ISAM 错误码以获得较多

的讯息. 可能的原因包含: 需要较完整的路径名称; 档案存在但您的账户没有写入

权限; 或磁盘驱动器已满.

 

 

-807    无法开启欲输出的档案.

 

程序不能够建立您以 Save 选项所指定的档案. 这档案应该在现有的目录存盘.

可能您的帐户在那个目录没有写入权限. 可能在那里存在一个相同名称的只读文件

(您能试着藉由不同的名称储存档案, 以除去这种可能). 可能磁盘已满. 查阅作业系

统错误讯息, 可能获得比较多的信息.

 

 

-808    无法开启欲选择的档案.

 

您指定给 Choose 选单选项的 SQL 脚本文件案, 不能为输入而开启. 确定档案在现有

的目录且您的帐户可以读取.

 

 

-809    已发生 SQL 语法错误.

 

在此 LOAD/UNLOAD/INFO 叙述中的 INSERT 叙述有不正确的语法.

请重新检查它使用的标点符号和关键词.

 

 

-810    不能够开启欲储存的档案.

 

不能够存档 SQL 脚本文件案. 检查您的账户有无在现有的目录写入的操作系统存取权

限和磁盘是否尚有空间.

 

 

-811    不能够为输出文件开启打印机.

 

应用程序正在尝试开启在 DBPRINT 环境变量里指定的装置, 但是失败. 检查变数的设

定再重新执行程序.

 

 

-812    不能够开启输出管道.

 

在 Output 选项之下, 您选取 To-pipe 并指定程序或指令以接收输出. 然而,

INFORMIX-SQL 不能开启到程序或指令的管道. 重新检查您所打的程序或命令,

确定它正确的依照 UNIX 或 DOS 的命令语法, 而且程序能在现有执行路径下找到,

同时寻找操作系统错误讯息, 因为它可能已经超过内存或处理程序上的某种系统

配额.

 

 

-813    不能够写入输出至管道(没有读取中的处理程序) .

 

在 Output 选项之下, 您借着管道送输出到指令或程序. 虽然管道已建立 (指出命令

有正确的语法而且指名存在的程序), 但意外地关闭. 这情况指出在管道里的程序尚未

收到所有的输出就结束了. 它可能由于错误而离开, 或可能您或另外的使用者以 kill

指令结束它. 寻找来自管道程序的讯息, 可能可以解释它为什么离开.

 

 

-816    不能够写入档案 (检查档案访问权限) .

 

不能够写入在前面的指令里指定的档案.可能您的账户没有写入的

操作系统访问权限. 再一次检查访问权限然后再执行程序.

 

 

-817    不能够读取档案(检查档案访问权限) .

 

不能够读取在前面的指令里指定的档案. 可能您的帐户没有读取它的作业系

统访问权限. 再一次检查访问权限然后再执行程序.

 

 

-818    找不到指定的使用者选单.

 

无法找到要求的使用者选单. 检查选单名称的拼法. 如果是您所要的, 请检

查现有的数据库里的 sysmenus 表格的内容; 该选单可能没有在数据库里定义.

 

 

-819    选单里没有选单项目.

 

您已选取的选单并没有项目在里面. 您能选择一个不同的选单或修正现有的选单.

如果您认为此选单应该有项目, 请检查现有的数据库里的 sysmenuitems 表格的

内容.

 

 

-820    没有更多的数据显示.

 

选取的列已显示完成. 这不是可卷动的显示; 故列不能再一次显示. 您能从

开始处重新查询或键入一个新的查询.

 

 

-821    不能够以预设报告开启档案.

 

您要求建立默认报表规格. 这个档案已储存在现有的目录, 但是有一些问题阻碍

它存档. 可能是磁盘已满或是可能您的账户没有在那里写入的操作系统访问权限.

 

 

-822    叙述已经存盘.

 

现有的 SQL 叙述已经以屏幕顶端显示的名称存盘. (这个讯息不会再出现.)

 

 

-823    没有叙述可执行.

 

您已选择 Run 选项, 但是没有键入任何 SQL 叙述. 键入一个叙述或使用 Choose

载入.

 

 

-824    遗失插入叙述上的值子句.

 

这个讯息可能不是任何现有的 Informix 产品传回的. 如果它确实出现, 参照

错误 -836 的讨论. 如果错误再度发生, 请记下所有的情况并联络 Informix 技

术支持部门.

 

 

-825    找不到程序.

 

无法找到支持的可执行文件案. 它应该已经存在于 INFORMIXDIR 环境变量指名的目

录中. 请咨询安装 Informix 软件的人.

 

 

-826    衍生系统呼叫失败.

 

这是表示不能开始下层处理程序的内部错误, 可能当使用 Use-editor 选项的时

候尝试从 DB-Access 进入 vi 被拒. 寻找操作系统的错误讯息, 可能可以获得

较多的讯息. 重试运算. 如果错误重现, 联络系统管理员. 在 DOS 系统中

您可能内存不足; 离开操作系统的指令列, 然后重新执行您的程序.

 

 

-827    找不到数据库.

 

查看错误 -329 的讨论.

 

 

-828    找不到脚本文件案.

 

您指定的 SQL 脚本文件案无法在现有的目录或 DBPATH 环境变量列出的目录中找到.

检查名称的拼法和 DBPATH 的设定.

 

 

-829    找不到画面表格.

 

您所指定的已编译画面表格规格无法在现有的目录或 DBPATH 环境变量列出的目录

上找到. 检查名称的拼法和 DBPATH 的设定.

 

 

-830    找不到报表.

 

您所指定的已编译报表规格无法在现有的目录或 DBPATH 环境变量列出的目录上

找到. 检查名称的拼法和 DBPATH 的设定.

 

 

-831    在 Report 规格中发现错误.

 

在报表规格的编译期间, 发现一或多个错误. 编译报表规格后再编译它一次.

跟着提示查看错误讯息. 它们能在这本书中查到.

 

 

-832    在画面表格规格中发现错误.

 

在报表规格的编译期间发现一或多个错误. 编辑报表规格后, 再编译它一次.

跟着提示查看错误讯息. 您能在这本书中查到.

 

 

-833    Saceprep 不能够编译报表.

 

Saceprep 报表编译程序, 在编译报表规格的时候遭遇错误. 从 saceprep 和

操作系统中寻找其他的错误讯息, 可能可以获得比较多的讯息.

 

 

-834    Sformbld 不能够编译画面表格.

 

sformbld 报表编译程序当编译报表规格的时候遭遇到错误. 从 sformbld 和

操作系统中寻找其他的错误讯息, 可能可以获得比较多的讯息.

 

 

-835    现有子句在交谈模式中是不正确的.

 

WHERE CURRENT OF 子句只在使用光标来读取列的程序中, 是有意义的. 在交谈

的上下文中, 您必须在您的 WHERE 子句中指定一个 CURRENT 以外的条件.

 

 

-836    插入叙述中没有值子句.

 

属于 LOAD 叙述的一部份的 INSERT 叙述. 它需要一个 VALUES 子句. 修改该叙

述, 使其包括这样的子句.

 

 

-837    没有足够的内存可供使用.

 

INFORMIX-SQL 需要配置一个小工作区的内存, 但无法如此作. 停止程序, 再重新

启动它. 如果这样不能解决问题, 请向系统管理员要求较多的内存. 在

DOS 系统上, 您会需要空出一些磁盘空间. 在4.1版以后的数据库服务器不会产

生此错误讯息.相关错误, 请参阅错误讯息 -208.

 

 

-838    载入档案里的一行太长.

 

LOAD 的输入档案的每一行必须全部读进储存器之内以处理. INFORMIX-SQL 调整必

要的内存缓冲区大小, 以包含现有行, 但在这情况下无法配置够大的缓冲区. 这个

错误最可能在当加载档案包含 TEXT 或 BYTE 数据值或非常大的 CHAR 值时发生. 一

个列的全部值必须包含在档案的一个行中. 如果您不能够有更多可供使用的记

忆体重新执行程序, 您就必须修正输入档案, 使每一个列里有较少或较短的值. 另一

个替换的方法为试着用 dbload 公用程序加载该档案.

 

 

-839    找不到表格.

 

您所指定的表格名称不存在现有的数据库中. 重新检查表格名称的拼法而且确定

您正在使用正确的数据库. 参考错误 -310 的讨论, 得到显示所有的表格名称的方法.

 

 

-840    名称太长.

 

数据库的名称, 报表, 画面表格, 和其他档案的名称一定是 10 或少于 10 个字符.

选择一个新的, 比较短的名称再重复这个作业. 在 DOS 系统中, 文件名最多 8 个

字符, 和 3 个字符的扩展名.

 

 

-841    命名必须以字母或 "_" 开头, 而且包含字母, 数字, 或 "_" .

 

数据库的名称, 报表, 画面表格, 和其他档案的名称必须和规则所显示的一致. 给定

符合规则的名称重复这项作业. 自 6.0 版的开始, 下列的标识符的名称以及伺

服器和光标名能以底线开始: 栏, 连接, 限制, 数据库, 索引, 程序, 同义字, 表

格, 触发器, 概观档 .

 

 

-842    不能够读暂存档.

 

INFORMIX-SQL 建立了一个暂存档; 现在它正试着将暂存档写回. 然而, 它收到未预期

的操作系统传回码. 可能您或另外的使用者删除了档案, 或可能已经有硬件上错误.

 

 

-843    不能够写入暂存档.

 

INFORMIX-SQL 试着将现有的 SQL 原始档写入暂存档中来编辑, 并且收到未预期的

操作系统传回码. 寻找操作系统错误讯息, 可能获得比较多信息. 可能您的账户,

在UNIX 系统上, 没有写入存取到 /tmp 或 DBTEMP 环境变量指名的目录, 或磁盘

可能已满. 5.01 及以后的版本, DBTEMP 环境变量在 INFORMIX-SE 数据库伺服

器使用, 但是不用在 INFORMIX-OnLine Dynamic Server.

 

 

-844    叙述太长 (最大值为 Count 字符) .

 

INFORMIX-SQL 不能配置一个大到能包含这个叙述的内存缓冲区. 您必须找

到缩短叙述的方法或是将之分为二或多个部份来执行.

 

 

-845    数据库里没有用户选单.

 

这个数据库不包含 sysmenus 表格, 或它是空的 sysmenus 表格, 或可能最高阶

层的选单未指名为 main. 确定您正在使用您所要的数据库. 并和为这个资料

库定义使用者选单的人讨论.

 

 

-846    载入档案中值的数目与栏数不相等.

 

OAD 处理器计算档案第一行的分界符号, 以决定加载档案中值的数目. 如果指

定一个分界符号, 表格中的每一栏或栏清单中的每一栏都必须有分界符号. 检查

一下欲指定的档案, 且该档案是否用了正确的分界符号字符. 本文中的任一行空

白行也会造成这种错误.

 

若 LOAD 叙述没有指定分界符号, 请查验默认的分界符号与档案中用的分界符

号相符. 若你对默认的分界符号有疑问, 请在 LOAD叙述中指定分界符号.

 

 

-847    加载档里的 '行号' 错误.

 

在加载数据文件内所指行号上的数据有问题. 作业在插入至此行之前停止但是

不包括此行(已经插入 number -1 列) . 如果这个作业是在交易之内, 回复交易,

如果不是,您将要从表格删除已插入的列, 或必须在重复作业之前, 从档案中除

去使用过的列. 要更正档案, 寻找可能帮助隔离问题的其他的错误讯息. 可能有

不足或太多的字段(分界符号) 在指出的行上. 可能有数据转换问题, 例如数值

的字段里有非数值的字符, 不合适格式的 DATETIME 值, 或是太长的字符字符串.

可能不允许 nulls 存在的栏有 null ( 零长度) 字段, 编辑加载档并改正问题;

查看下列行里相似的问题;然后重做一次.

 

 

-848    Form4gl 不能编译画面表格.

 

您要求编译的画面表格规格, 但是画面表格编译程序报告了一个或多个错误.

改正画面表格规格里的错误并再作业一次. 错误讯息能在 formname.err 档案

中找到.

 

 

-849    在画面表格规格中发现警告.

 

您要求编译画面表格规格, 但是画面表格编译程序报告一个或多个的警告. 在尝

试这个画面表格前并不一定要改正警告, 但是提示您这样作. 错误讯息能在

formname.err 档案中找到.

 

 

-850    使用者没有修正这个选单的访问权限.

 

只有在这个数据库里建立 sysmenus 表格的用户能修正选单结构. 也就是

在现有数据库首先选取 User-Menu display 的 Modify 选项的用户. 您能依

下列查询systables 发现那个人是谁.

SELECT owner FROM systables WHERE tabname LIKE 'sysmenu*'

如果这不适当, 要求那人移除 sysmenus 和 sysmenuitems 表格, 然后要求维

护此清单的人重新建立他.

 

 

-851    不能够移除档案( 检查档案访问权限 ) .

 

您要求移除档案, 但是它不能移除, 或许因为您的帐户在它储存的目录

上并没有写入存取的权限. 使用操作系统指令检查档案访问权限.

 

 

-852    写入失败.  '计数' 列卸除(检查 ulimit 或磁盘空间).

 

在写入 '计数' 输出行到卸除档后, 尝试写入下一行时发生错误. 查看作业系

统讯息可能可以得到较多的讯息. 可能的原因包括完整的磁盘已满或磁盘配额

限制.

 

 

-853    现有的交易已因为错误或失去 COMMIT WORK 而回复.

 

从脚本文件中执行 SQL 叙述时, INFORMIX-SQL 收到错误传回码, 或是读到

档案末端而没有发现 COMMIT WORK 叙述. 既然交易在进行中 (档案已包含

BEGIN WORK 或数据库是符合 ANSI 标准的), INFORMIX-SQL 将交易回复

(即使没有错误传回, 也不能让交易保持开启而且假定交易成功).

 

 

-854    找不到后端, 或是后端正忙碌中.

 

在 DOS 下, 此应用程序无法连接到本地的 INFORMIX-SE 数据库引擎. 或是

INFORMIX-NET PC 通讯模块.

SE 引擎 (用来存取本地数据库) 或 INFORMIX-NET PC 通讯模块 (用来存

取远程数据库). 在以如 DATABASE 之类叙述连接之前必须先行加载. 若要

加载 SE 引擎, 则执行 PSTARTSQ. 若要加载 INFORMIX-NET PC 通讯模块,

则执行 REMSQL.

若 SE 引擎或 INFORMIX-NET PC 通讯模块已经加载, 而且您得到此错误讯息,

有可能是另一个应用程序正连接到 SE 引擎或 INFORMIX-NET PC 通讯模块

(它们在同一时间仅能有一个连接), 或可能是现有的应用程序遇到内部错误

而失去连接.

若是已经有其他的应用程序连接, 您必须先释出那连接才能用现有的应用程序

去连接. 若是已连接的程序是 4GL 或 ESQL/C 程序, 则可以执行 CLOSE

DATABASE 叙述呼叫 SQLEXIT() 函数或直接离开而释出连接 .

在发生内部错误的极端状况下, 您必须离开程序并且在 DOS 指令列 KILL SE

引擎或 INFORMIX-NET PC 通讯模块. 若要 kill SE 引擎, 则执行 PSTARTSQ -T,

可以用 PSTARTSQ 重载. 若要 kill INFORMIX-NET PC 通讯模块, 则执行

SETNET -T , 可以用 REMSQL 重载.

此错误讯息也有可能发生在客户端 Windows 应用程序使用错误的. DLL档案连接

到网络另外一端的数据库服务器. 客户端 Windows 应用程序若能与 INFORMIX-NET

PC 4.1 版 (如 4.1 ESQL/C) 一起作业, 即能与 INFORMIX-NET FOR Windows

5.01 版作业. 若两者同时存在于同一部计算机上. 请检查 PATH 环境变量中 5.01

版的 LDLLSQLW.DLL 出现在 4.01 版的 LDLLSQLW.DLL 之前.

此外, 当前目录, MS-Windows\SYSTEM 目录, 或是含有此应用程序可执行文件的

目录中不能有 4.1 版的 LDLLSQLW.DLL.

 

 

-903    无法存取有授权的 INFORMIX-SQL 服务器.

 

这个叙述参照到另外的主计算机系统, 而且系统是作用中的并可存取. 然而,

sqlexecd 网络 daemon 还没有在其上启动, 所以没有数据库服务能从此处得到.

联络其它系统 DBA, 请确定 INFORMIX-STAR 或 INFORMIX-NET 软件已正确地

安装.

 

 

-904    INFORMIX-SQL 服务器上没有许可证文件.

 

这个讯息指出 Informix 网络软件的安装不完全. 重新检查工作站及服务器上的

安装步骤并确定它已完成且没有错误.

 

 

-905    无法在 /etc/services 中定位 sqlexec 服务 /tcp 服务.

 

INFORMIX-STAR 或 INFORMIX-NET 软件并没有正确的安装在这个系统上, 特别是

/etc/services (UNIX) 或 \etc\services (DOS) 的系统配置档案中的组态输入

项还没有完成. 请连络帮您安装 Informix 软件的人.

 

 

-906    不能够定位远程系统(检查 DBPATH).

 

INFORMIX-NET 正在搜寻现有叙述中要求的数据库, 它是使用 PBPATH 环境变量

定义的输入项, 并且试着使用 //sitename 指定另一个计算机系统上的目录.

此系统不能够存取, 重新检查 DBPATH 环境变量的设定, 请确定其他的系统已经

有安装 INFORMIX-STAR 或 INFORMIX-NET 并且能作业.(这个讯息只在 6.0 之前

的版本出现.)

 

 

 

-906    不能够定位远程系统(检查 DBPATH).

 

INFORMIX-NET 正在搜寻现有叙述中要求的数据库, 它是使用 PBPATH 环境变量

定义的输入项, 并且试着使用 //sitename 指定另一个计算机系统上的目录.

此系统不能够存取, 重新检查 DBPATH 环境变量的设定, 请确定其他的系统已经

有安装 INFORMIX-STAR 或 INFORMIX-NET 并且能作业.(这个讯息只在 6.0 之前

的版本出现.)

 

 

 

-907    不能够在现有的数据库服务器上建立 socket.

 

INFORMIX-STAR 或 INFORMIX-NET 正在尝试存取另外的计算机系统, 但不能够

建立连接. 联络系统管理员, 要求检查 TCP/IP 已正确地安装且功能是正常的.

 

 

-908    试图连接到数据库服务器 (servername) 失败.

 

这个程序或应用程序正试着存取另一个数据库服务器, 却失败. 记下

叙述中的服务器名称.

 

无法取得所需的数据库服务器, 或是网络关闭或壅塞. 请询问你的 DBA 和

系统管理员来查验服务器和网络是否可运作. 若网络阻塞, 使用环境变量

INFORMIXCONTIME 及 INFORMIXCONRETRY 来调整连接时间.

有关设定这些环境变量的信息, 请参阅 Informix Guide to SQL: Reference.

 

这个讯息会出现在 6.0 版本及其以后的版本.

 

 

 

-908    试图连接到数据库服务器 (servername) 失败.

 

这个程序或应用程序正试着存取另一个数据库服务器, 却失败. 记下

叙述中的服务器名称.

 

无法取得所需的数据库服务器, 或是网络关闭或壅塞. 请询问你的 DBA 和

系统管理员来查验服务器和网络是否可运作. 若网络阻塞, 使用环境变量

INFORMIXCONTIME 及 INFORMIXCONRETRY 来调整连接时间.

有关设定这些环境变量的信息, 请参阅 Informix Guide to SQL: Reference.

 

这个讯息会出现在 6.0 版本及其以后的版本.

 

 

 

-909    不正确的数据库名称格式

 

这个叙述似乎是从另一个数据库服务器参考至某一数据库, 但是数据库名称,

site 名称或服务器名称, 或标点不正确. 重新检查叙述并且确定所有的标识符

以字母起头 (从 6.0 版开始也可用底线) 而且只有包含字母, 数字, 和底线,

而且参考形式是以 dbname@sitename 或 //sitename/dbname (6.0 版之前), 或

dbname@servername 或 //servername/dbname (从 6.0 版开始). 如果您正在使用

INFORMIX-OnLine for NetWare, 请检查您以此产品手册中所解释的任一形式来

提供远程数据库名称.

 

 

-910    无法从 INFORMIX-SE 客户端建立一个 INFORMIX-OnLine 数据库.

 

此 CREATE DATABASE 叙述不能完成的原因是因为您的工作站上的数据库

服务器和其它计算机系统的数据库服务器是不同的产品, 一个是 OnLine 而另一个是

INFORMIX-SE.在此组态中您只能操控数据库而您却不能够建立数据库. 如欲建

立一个数据库, 可在两端启动同样的产品, 或是在本地的计算机系统中执行叙述.

SQLEXEC 环境变量(在 6.0版之前的数据库服务器)将决定您的应用程序是使

用那一个数据库服务器.

 

 

-911    系统错误 - 无法从管道读取.

 

这是在您的应用程序和 INFORMIX-STAR 或 INFORMIX-NET 软件之间, 反映

通讯故障的内部错误. 查看操作系统错误讯息, 其中可能包含较多的讯息.

重新开启应用程序,如果问题重现, 请记下所有的情况并联络 Informix 技术支

援部门.

 

 

-912    网络错误 - 无法写到数据库服务器.

 

网络故障. 查看操作系统的错误讯息, 其中可能包含有较多的讯息. 重新开启应

用程序. 如果问题重现, 联络系统管理员, 并且要求执行网络诊断.

 

 

-913    网络错误 - 无法从数据库服务器读取.

 

网络故障. 查看操作系统的错误讯息, 其中可能包含较多的讯息. 重新开启应用

程序, 如果问题重现, 联络系统管理员, 并且要求执行网络诊断.

 

 

-914    系统错误 - 不能够写到管道.

 

这是在您的应用程序和 INFORMIX-STAR 或 INFORMIX-NET 软件之间, 反映通

讯故障的内部错误. 查看操作系统错误讯息, 其中可能包含较多的讯息. 重新

开启应用程序, 如果问题重现, 请记下所有的情况并联络 Informix 技术支持部

门.

 

 

-915    不能从 INFORMIX-OnLine 的客户端上建立一个 INFORMIX-SE 数据库.

 

此 CREATE DATABASE 叙述不能完成的原因是因为您的工作站上的数据库服务器

和其它计算机系统中的数据库服务器是不同的产品, 一个是 OnLine 而另一个是

INFORMIX-SE.在此组态中您只能操控的数据库而您却不能够建立数据库. 如欲建立

一个数据库, 可在两端启动同样的产品, 或是在本地的计算机系统中执行指令.

SQLEXEC 环境变量将决定您的应用程序是使用那一个数据库服务器 (在 6.0 版之

前的数据库服务器).

 

 

-916    NFS 加挂表格错误.

 

您尝试存取的数据库服务器, 或是在您 DBPATH 环境变量的指定路径, 是在

NFS-加挂 (NFS-mounted) 文件系统上. 然而, 数据库服务器或客户端应用程序

遭遇到 NFS-加挂表格 /etc/mtab 档案的存取错误(或在某些操作系统上的

 /etc/mnttab). 此乃是由于您的账户已经没有读取档案的权限. 联络您的系统

管理员将档案设定成可读取的. 这个讯息只在 6.0 之后的版本出现.

 

 

 

-916    NFS 加挂表格错误.

 

您尝试存取的数据库服务器, 或是在您 DBPATH 环境变量的指定路径, 是在

NFS-加挂 (NFS-mounted) 文件系统上. 然而, 数据库服务器或客户端应用程序

遭遇到 NFS-加挂表格 /etc/mtab 档案的存取错误(或在某些操作系统上的

 /etc/mnttab). 此乃是由于您的账户已经没有读取档案的权限. 联络您的系统

管理员将档案设定成可读取的. 这个讯息只在 6.0 之后的版本出现.

 

 

 

-917    在使用新的数据库之前必须先关闭现有的数据库.

 

这个叙述 (DATABASE 或 CREATE DATABASE) 要求开启不同的数据库, 然而现有

的数据是在另外的计算机系统上, 因为这个原因您必须以 CLOSE DATABASE 指令明

确的关闭它 (当您的应用程序及数据库是在同一部计算机上的时候, 数据库服务器

将会为您自动地关闭现有的数据库). 如果程序收到这个错误, 请重新检查程序

逻辑而且确定它在执行 CLOSE DATABASE 叙述前已执行了 [CREATE] DATABASE

叙述. 这个方法适用于所有的网络或本地的情况.

 

 

-918    从另外的数据库服务器收到非预期的数据.

 

这是在您的应用程序与在另一个地方的 INFORMIX-STAR 或 INFORMIX-NET 软件

之间, 反映通讯故障的内部错误. 重新开启您的应用程序. 如果问题依然相同,

要求您的网络管理员执行网络诊断. 如果错误不断发生, 请记下所有的情况并联络

Informix 技术支持部门.

 

 

-919    系统错误. 传给数据库服务器程序的自变量数目不对

 

这是在您的应用程序, INFORMIX-STAR 或 INFORMIX-NET 软件, 和另一个计算机

系统里数据库服务器之间, 反映通讯故障的内部错误. 首先确定所有的三个软

体组件是在兼容的软件层级 (在 6.0 版之前的版本, 请参阅适当的

INFORMIX-NET/INFORMIX-STAR 的安装和组态手册). 必要的话重新编

译和链接您的应用程序. 如果问题重现, 请记下所有的情况并联络 Informix

技术支持部门.

 

 

-921    系统错误. sqlexec 服务器上不合法或自变量数目错误.

 

这个内部错误, 反映应用程序和其他计算机系统上, 数据库服务器之间通讯上的失

败. 检查所有软件组件均属于兼容软件的层级. 需要的话, 请重新编译并联结应用

程序. 若问题再度发生, 请记下所有的情况, 并洽询 Informix 技术支持部门.

 

针对 Windows NT 系统, 可参阅Client Installation and Configuration Guide, 以瞭

解使用 Setnet32 来设定主从通讯环境变量的信息.

 

针对 6.0 之前的版本, 参阅适合的 INFORMIX-NET/INFORMIX-STAR Installation and

Configuration Guide, 找寻产品兼容的图表.

 

 

-922    不能够得到现有的工作目录名称.

 

您的应用程序使用的工作目录有某些错误, 工作目录可能在此地或其他的计算机系

统中, 可能是您的帐户已没有对目录的读入访问权限, 或可能包含此文件系统没有

适当地加挂. 退出您的应用程序并且重试. 如果问题重现, 联络系统管理员

寻求协助.

 

 

-923    INFORMIX 不可存取现在的数据库服务器.

 

不允许在网络使用这个版本的 Informix 产品. 请找出可以和 INFORMIX-STAR 或

INFORMIX-NET 一起使用的软件版本, 并且重新设定您的 INFORMIXDIR 环境变量和

SQLEXEC 环境变量( 6.0 以前的数据库服务器版本)

 

 

-924    INFORMIX 不可存取特定的数据库服务器.

 

如果您只有安装 INFORMIX-NET NET station package 在您的客户端机器之上,

您不能够存取本地的数据库. 如果您正在尝试存取非本地的数据库, 再键入指令

一次指定 sitename 和数据库名称, 或 DBPATH 环境变量以搜寻特定的位置.

如果您希望使用 Informix 产品去存取本地和远程的数据库, 请联络您的

Informix 经销商索取详细数据购买适当的 informix 产品.

 

 

-925    协议的格式应该是 tcp.

 

在 OnLine 上的 $INFORMIXDIR/etc/sqlhosts 檔或是在 INFORMIX-OnLine for

NetWare 上的 \INFORMIX\etc\sqlhosts 档案内显示的协议格式应该是 tcp.

 

 

-926    INFORMIX-OnLine 不允许存取分布式数据.

 

这个叙述参考到不同数据库服务器的数据库, 举例来说, 附加

dbname@sitename:table 在表格名称上. 然而, 这个版本的 OnLine 并不允许

此的用法. 使用这个版本, 您只能参考在相同的数据库服务器的数据库表格.

联络您的 Informix 经销商升级完整的 INFORMIX-STAR 数据库服务器. 如果

您确信已安装 INFORMIX-STAR, 那么检查 INFORMIXDIR 环境变量的内容.

如果您正在使用 INFORMIX-OnLine for NetWare, 那么您就不能存取远程的表格

或数据库, 除非您有 INFORMIX-NET PC.

 

 

-927    您能参考的服务器数目超过最大的限制.

 

这个叙述参考到的位置, 比数据库服务器能处理的还多. 在一个叙述中可能出

现不同的 sitenames 的限制, 到 4.1 版为止是 32 个 (较新版本可能允许更多).

请重新检查叙述并确定只有必要的位置定义在其中. 如果如此, 修改作业使用较

少的位置; 举例来说, 可选取一些数据到本地暂时的表格.

 

 

-928    这个数据库服务器未被授权执行分布式数据存取.

 

这项叙述是指在不同计算机系统中的数据库 (例如, 以 dbname@sitename:table 使

表格名称合格化). 然而, 在指定场所作业中的数据库服务器并未授权作这种用

法. 这种情况表示在安装远程计算机系统时, 发生错误: 系统的组态是为了存取网

路, 但错误的数据库服务器却已遭启动. 请洽询网络管理员, 并要求在启动

sqlexecd daemon 时, 检查环境变量. 若你使用的是 NetWare 的INFORMIX-

OnLine , 你试着在未被授权执行远程访问的数据库服务器上, 存取一个表格; 你

只能存取其他的 INFORMIX-NET PC 系统.

 

 

-930    不能够连接到数据库服务器 servername

 

此程序正试着存取另一个计算机系统, 但是失败. 请注意在目前叙述中的伺服

器名称.  并要求您的网络管理员及 DBA 检查网络是否在运作中, 并检查该

数据库服务器是否正在作业中. 这个讯息只在 6.0 之后的版本出现.

 

 

 

-930    不能够连接到数据库服务器 servername

 

此程序正试着存取另一个计算机系统, 但是失败. 请注意在目前叙述中的伺服

器名称.  并要求您的网络管理员及 DBA 检查网络是否在运作中, 并检查该

数据库服务器是否正在作业中. 这个讯息只在 6.0 之后的版本出现.

 

 

 

-931    无法找到 /etc/services 中的 servicename 服务 /tcp 服务.

 

在网络组态档案 /etc/services (UNIX) 或 \etc\services (DOS) 中并未列

出所提到的服务名称. 请检查 $INFORMIXDIR/etc/sqlhosts 档并确定服务器上想

要的服务名称是正确的. 如果是的话, 联络您的网络管理员并查出为什么服务无

法知道的原因. 如果您正在使用 INFORMIX-OnLine for NetWare, 查看客户端

的 \etc\services 档案, 找出需要的输入值.

 

 

-932    网络连接错误, 系统 '函数' 呼叫失败.

 

这是在您的应用程序和在另外位置的网络软件 (INFORMIX-STAR, INFORMIX-NET,

INFORMIX-Net for Windows, 等等) 之间用来反映通讯失败的内部错误.

重新启动您的应用程序. 查阅可能提供更详细信息的操作系统错误讯息.

如果您正在使用 INFORMIX-NET for Windows, 这可能是 Windows Sockets 的

问题; 请检查您的 Windows Sockets 1.1 的说明文件以获得比较多的信息.

同时检查 sqlca 结构的 sqlerrm 字段讯息, 找到此 Windows Sockets 讯息.

在 ASCL 上下文中, 这个错误也可能表示 informix.ini 档案有问题. 请查验

SERVICE, HOST, 以及 PASSWD 项目是否正确.

如果问题不断发生, 要求您的网络管理员执行网络诊断. 如果错误仍然发生,

请记下所有的情况并联络 Informix 技术支持部门.

 

 

-933    在 DBNETTYPE 中指定未知的网络型态.

 

当同时有两个协议时可使用 DBNETTYPE 环境变量以区别在特定机器上该使用那

一个协定. 现有设定的值不属于有支持的协议, 显示此变量并确定其设定正确.

有关在 6.0 版之前的版本, 正确的设定请参照 INFORMIX-NET/INFORMIX-STAR

的安装和设定手册. 如果您正在使用 INFORMIX-OnLine for NetWare, 将

DBNETTYPE 设为 starlan, tcp/ip, 或其它有支持的网络.

 

 

-934    至远程的连接已不再合法.

 

此叙述使用的数据来自另外的计算机系统, 但连接已经遗失. 在重建连接之后回

复交易并再试一次.

 

 

-935    无法取得 IPX 地址给服务名称  '服务名称' .

 

您在 INFORMIX-OnLine for Netware 系统上透过 IPX/SPX 网络协议, 试着以所

示的服务名称去连接数据库. 客户端应用程序, INFORMIX-NET 或 INFORMIX-STAR

无法决定与指定服务相关的 IPX 地址. 可能的原因有: 在您的 sqlhosts 档案

中拼错了服务名称. 未执行 sqlexecd daemon 或 OnLine 数据库服务器, 或是可携

式的 INFORMIX-OnLine for NetWare 无法正常作业. 请查验 sqlhosts 档案中的

服务名称. 请教 DBA 或系统管理员, 以查验 sqlexecd daemon, 数据库伺

服器, 可携式的 INFORMIX-OnLine for NetWare 软件是可作业的.

 

 

-951    数据库服务器不认识 username 用户

 

您试着要存取的数据库服务器不能接受您的使用者 ID, 或在 ~/.netrc 档案上,

指定要接上的服务器主机的登录名称, 或在 CONNECT 叙述的 USER 子句中所指

定的使用者名称. 如果您明确地在 ~/.netrc 档案中或在 CONNECT 叙述指定您

的使用者名称,  确定这名称是对的. 如果您在伺服机器上没有有效使用者 ID,

请找系统管理员. 这个讯息只在 6.0 之后的版本出现.

 

 

 

-951    数据库服务器不认识 username 用户

 

您试着要存取的数据库服务器不能接受您的使用者 ID, 或在 ~/.netrc 档案上,

指定要接上的服务器主机的登录名称, 或在 CONNECT 叙述的 USER 子句中所指

定的使用者名称. 如果您明确地在 ~/.netrc 档案中或在 CONNECT 叙述指定您

的使用者名称,  确定这名称是对的. 如果您在伺服机器上没有有效使用者 ID,

请找系统管理员. 这个讯息只在 6.0 之后的版本出现.

 

 

 

-952    数据服务器的用户密码不正确

 

~/.netrc 档案中或是 CONNECT 叙述的 USER 子句中指定的密码不正确.  资料

库服务器不能接受 (或是找不到) 您的帐户密码.  确定您指定正确的密码, 并再

试一次. (这个讯息只在 6.0 之后的版本出现).

 

 

 

-952    数据服务器的用户密码不正确

 

~/.netrc 档案中或是 CONNECT 叙述的 USER 子句中指定的密码不正确.  资料

库服务器不能接受 (或是找不到) 您的帐户密码.  确定您指定正确的密码, 并再

试一次. (这个讯息只在 6.0 之后的版本出现).

 

 

 

-953    网络服务器无法执行 sqlexec 程序.

 

网络服务器无法启动数据库服务器处理线串. 这个错误的最常见原因, 是由 root

在启动数据库服务器程序时, 定义 INFORMIXDIR 环境变量失败. 请联络网络管

理员, 并要求在远程的数据库服务器程序以 informix 软件的正确路径重新启动.

(这个讯息只在 6.0 之后的版本出现).

 

 

 

-953    网络服务器无法执行 sqlexec 程序.

 

网络服务器无法启动数据库服务器处理线串. 这个错误的最常见原因, 是由 root

在启动数据库服务器程序时, 定义 INFORMIXDIR 环境变量失败. 请联络网络管

理员, 并要求在远程的数据库服务器程序以 informix 软件的正确路径重新启动.

(这个讯息只在 6.0 之后的版本出现).

 

 

 

-954    远程主机不认识客户端.

 

您正试着存取的计算机, 不能辨认正在执行您的应用程序的计算机. 请联络您的网

路管理员, 要求将您的计算机设定成为可辨认的. 通常让一部机器成为可辨认的

方法是透过在另一系统中的组态文件 /etc/hosts.equiv. 请参阅 <<INFORMIX-

NET/INFORMIX-STAR Installation and Config-uration Guide>>. (这个讯息

只在 6.0 之前的版本出现.).

 

 

 

-954    远程主机不认识客户端.

 

您正试着存取的计算机, 不能辨认正在执行您的应用程序的计算机. 请联络您的网

路管理员, 要求将您的计算机设定成为可辨认的. 通常让一部机器成为可辨认的

方法是透过在另一系统中的组态文件 /etc/hosts.equiv. 请参阅 <<INFORMIX-

NET/INFORMIX-STAR Installation and Config-uration Guide>>. (这个讯息

只在 6.0 之前的版本出现.).

 

 

 

-955    远程主机无法从客户端接收数据.

 

这是一个内部错误, 它反映了在您的应用程序, 和另一端 INFORMIX-STAR 或

INFORMIX-NET 之间的通讯失败. 请重新启动您的应用程序. 查阅操作系统讯息,

以得到更多信息. 如果问题重现, 请要求您的 DBA 执行网络诊断. 如果错误

不断发生, 请记下所有的情况并联络 Informix 技术支持部门. (这个讯息只在

 6.0 之前的版本出现.).

 

 

 

-955    远程主机无法从客户端接收数据.

 

这是一个内部错误, 它反映了在您的应用程序, 和另一端 INFORMIX-STAR 或

INFORMIX-NET 之间的通讯失败. 请重新启动您的应用程序. 查阅操作系统讯息,

以得到更多信息. 如果问题重现, 请要求您的 DBA 执行网络诊断. 如果错误

不断发生, 请记下所有的情况并联络 Informix 技术支持部门. (这个讯息只在

 6.0 之前的版本出现.).

 

 

 

-956    远程主机里的 /etc/hosts.eguiv 没有客户端 '客户端名称'

 

指定的远程机器无法辨别客户端机器 (当地主机, 其名称可由 hostname 指令传回)

的名称而无法完成作业.  客户端名称通常是记录在架构档案 /etc/hosts.eguiv 中.

远程机器的 rhostrs 档案亦可能需要修改.这些档案

的详情可试着在 UNIX 系统打 man rhosts 找到远程主机管理员. 确定客户端主机

名称有指定在远程主机的 /etc/ hosts.equiv 档案中.  (这个讯息只在 6.0 之前的

版本出现.).

 

 

 

-956    远程主机里的 /etc/hosts.eguiv 没有客户端 '客户端名称'

 

指定的远程机器无法辨别客户端机器 (当地主机, 其名称可由 hostname 指令传回)

的名称而无法完成作业.  客户端名称通常是记录在架构档案 /etc/hosts.eguiv 中.

远程机器的 rhostrs 档案亦可能需要修改.这些档案

的详情可试着在 UNIX 系统打 man rhosts 找到远程主机管理员. 确定客户端主机

名称有指定在远程主机的 /etc/ hosts.equiv 档案中.  (这个讯息只在 6.0 之前的

版本出现.).

 

 

 

-999    功能尚未完成.

 

这个错误表示使用的功能尚未完成. 请检查说明文件及修订版注记, 以了解本产品这个特殊

修订版上现有的限制. 若一般的说明文件或修订版注记中未说明这种情况, 且再度发生这种

情况时, 请记下所有的情况, 并洽询 Informix 技术支持部门.

 

 

-1003   环境中设定了不正确的 ACCEPTKEY.

 

无法辨认 ACCEPTKEY 环境变量指定的键; 可能它不是以 F 开头, 就是

它的号码不正确. 请指定不同的键.

 

 

-1004   已预先指定 ISQL 给选取的 ACCEPTKEY .

 

ACCEPTKEY 环境变量中指定的键是个一直被 INFORMIX-SQL 使用的键. 请在环

境变量中设定不同的值.

 

 

-1005   您指定的 termcap 档无法读取.

 

TERMCAP 环境变量指定了一个档案, 而该档无法开启. 可能它不存在, 或是您的

账户没有足够的权限来读取它. 请检查环境变量和它所指名的档案.

 

 

-1006   错误号码.

 

所显示的错误码已被传回, 但程序无法显示该号码的讯息本文, 可能因为在 INFORMIXDIR

环 境变量指定的目录中无法找到某一个 .iem 讯息档案. 在 finderr

工具中找寻该号码. 亦 可洽询安装 Informix 软件的人员, 找出找不到讯息文件的原因.

 

 

-1007   INFORMIXTERM 环境变量的值不正确.

 

INFORMIXTERM 环境变量正确的设定为 termcap 和 terminfo. 将该变数

设定为 termcap (或不定义该变量), 将导致 4GL 使用 TERMCAP 设施来做终

端机控制. 将它设为 terminfo 将导致 4GL 使用 TERMINFO 设施. 其他的设定,

包括在 termcap 和 terminfo 两个字中夹杂大写字母, 将会导致这个错误.

 

 

-1008   Termcap 键入太长.

 

TERMCAP 环境变量的内容, 或是 termcap 数据库中的 termcap 记载, 将在应

用程序初始化时读取. 然而, 配置给 termcap 键入内存缓冲区为 1,024

个字节, 而使用中的键入大于这个数字. 请使用一个较简化的 termcap.

 

 

-1009   不良的 termcap 键入.

 

TERMCAP 环境变量的内容, 或是 termcap 数据库中的 termcap 记载, 将在应

用程序始化时读取.  当程序在做读取时, 程序在 termcap 中找到不正确的标点

符号, 特别是期待出现冒号分隔符处没有出现冒号, 请重新检查指定的 termcap 并

选择另一个, 或是修正正在使用的.

 

 

-1010   太多 tc= indirections.

 

在终端机的 termcap 定义中, tc= 的记载造成使用不同的终端机定义做为预

设值. 该终端机可能也有一个 tc= 的记载等等. 然而, 4GL 不准许超过

4 个的 tc= 指令. 在此时所用的 termcap 定义 (由 TERM 或 TERMCAP 环境

变量指定) 已超过这个限制. 您需要写入或找到一个更完备的 termcap 定义.

 

 

-1101   变量地址为 NULL.

 

如果此内部错误重现, 请记下所有的情况并联络 Informix 技术支

援部门.

 

 

-1102   域名在画面表格中找不到.

 

列在 INPUT, INPUT ARRAY, CONSTRUCT, SCROLL 或 DISPLAY 叙述中的栏

位名称, 没有出现在目前显示的屏幕画面表格规格中, 请重新检查程序的逻辑,

并确定您要的窗口是目前正在使用的窗口, 您要的画面表格正显示在其中, 叙述

中所有的域名拼法皆正确.

常见的错误为试图使用字段附笺, 而没有使用域名. 字段附笺是用来写在萤

幕画面上的, 并出现在该字段的 ATTRIBUTES 叙述的左侧. 它不是用于输入或显

示目的之域名. 而域名是与它相关的栏之名称. 这个名称出现在

ATTRIBUTES 区段中等号的右侧:

ATTRIBUTES

f000 = customer.customer_num,color=red;

在上面的例子中, 域名为 customer_num, 在 INPUT 叙述中使用附笺 f000

将会产生错误.

 

 

-1103   这个值不在正确的可能范围内.

 

这个栏已建立了可接受值的序列或范围 (透过在画面表格规格文件的 INCLUDE

属性). 您必须键入可接受范围内的值.

对于 4GL 程序而言, 该错误由 -1301 取代.

 

 

-1104   两个输入不相同 -- 请再试一次.

 

为了防止打字错误, 这个字段已指定为 VERIFY (在画面表格规格文件中). 在这

个字段中的值必须键入两次, 两次键入必须相同. 重新键入时请小心. 相对地

您可以用插断键取消画面表格键入 (通常是 CTRL-C, 请参阅程序设计员提供的

作业指示).

对于 4GL 程序而言, 该错误由 -1302 取代.

 

 

-1105   因为有格式存在, 您无法使用这个编辑特性.

 

这个字段定义了 PICTURE 属性来指定它的格式 (在画面表格规格文件中). 当您

编辑这种字段时, 您不能使用某些特定的编辑键 (如 CTRL-A, CTRL-D, 和

CTRL-X). 请只键入可印出的字符和 backspace.

对于 4GL 程序而言, 该错误由 -1303 取代.

 

 

-1106   字段错误.

 

您在这个字段中键入了程序变量无法接受的值. 例如, 您在整数变数中键

入了小数值; 或是您键入了比应用程序所期望更长的字符字符串. 请记下所

有的情况, 然后与写这个程序的人讨论.

对于 4GL 程序而言, 该错误由 -1304 取代.

 

 

-1107   字段下标超出范围.

 

在 INPUT, DISPLAY, 或 CONSTRUCT 叙述中屏幕数组的下标小于 1 或大于阵

列中的字段数目. 请重新检查原始程序和画面表格规格, 以找出错误.

 

 

-1108   记录不在画面表格中.

 

在 CONSTRUCT, INPUT, INPUT ARRAY, DISPLAY 或 DISPLAY    ARRAY 叙述

中的记录, 没有出现在现在显示的屏幕画面表格. 重新检查原始程序和画面表格规格,

以检查看是否屏幕记录名称相符合.

 

 

-1109   列表与记录字段计数不同.

 

程序中的变量个数与在 CONSTRUCT, INPUT, INPUT ARRAY, DISPLAY, 或

DISPLAY ARRAY 叙述中的屏幕字段数目不同. 重新检查叙述与画面表格规格,

以查看是否其中有误. 常见的错误有: 改变了屏幕记录的定义, 而没有反映在

每个使用该记录的叙述中, 以及在程序中改变记录, 而没有反映在画面表格的

设计上.

 

 

-1110   找不到画面表格

 

找不到指定于 OPEN FORM 叙述的画面表格档案. 请检查叙述中的 "form-file"

参数. 它不应包含 .frm 扩展名. 然而, 如果画面表格不在当前目录, 请指定

档案的完整路径.

 

 

-1111   字段表格位移超出范围.

 

这是内部错误. 如果错误重现, 请记下所有的情况并联络 Informix 技术支持部门.

 

 

-1112   画面表格与现有的 4GL 版本不兼容. 请重建您的画面表格.

 

不接受在 OPEN FORM 叙述中指定的画面表格档案. 它可能在某方面损

坏了, 或是编译它的画面表格编译程序, 与编译程序的 4GL 编译程序版本不

相容. 请用目前的画面表格编译程序, 重新编译画面表格.

 

 

-1113   内存配置错误.

 

内存中有一个 BYTE 或 TEXT 变量, 并指定了一个值给该变数. 然而没有

足够的内存来存放该变量. 请重新检查程序, 并将那个大的值存放于档案.

对于 4GL 程序而言, 该错误由 -1319 取代.

 

 

-1114   没有显示画面表格.

 

目前的叙述需要使用屏幕画面表格. 例如 DISPLAY...TO 或 INPUT 叙述

必须使用画面表格的字段. 然而, 自现有的窗口开启后, 没有执行

DISPLAY FORM 叙述. 请重新检查程序的逻辑, 确定它开启了一个画面表格,

并在尝试使用画面表格前先显示它.

 

 

-1115   数值对字段而言太长.

 

4GL 试图格式化一个数值, 以显示在一个画面表格字段, 但是结果字符串对

字段而言太长. 请重新检查程序的逻辑, 以找出指定了多大的数值.

 

 

-1116   画面表格字段的默认值不能转换成输入变量的类型.

 

这个叙述从画面表格字段中取得输入, 但是字段的默认值 (用 ATTRIBUTES 的

关键词 DEFAULT 指定在画面表格中) 与接收它的程序变量不兼容. 请重新检查

此叙述指名的所有程序变量, 并将它们与画面表格规格中的字段定义比较. 确定

每个变量对应到您要的字段, 并且数据类型兼容.

 

 

-1117   无法将日期数值转换成字符串.

 

所有的任何产品都没有使用这个讯息. 如果错误重现, 请记下所有的情况并联络

Informix 技术支持部门.

 

 

-1119   未在画面表格中找到 NEXT FIELD 名称.

 

这个叙述 (INPUT 或 INPUT ARRAY) 包含一个 NEXT FIELD 子句, 该子句使

用了未定义在画面表格中的字段. 可能画面表格已改变, 而程序没有. 亦请参阅

错误 -1102 的附注.

对于 4GL 程序, 这个错误由 -1371 取代.

 

 

-1120   找不到讯息档案.

 

在最近使用的 OPTIONS 叙述的 HELP FILE 子句指定的讯息文件不存在. 请

在程序中找出该 OPTIONS 叙述, 并重新检查 "help-file" 参数. 它必须包含讯

息档案完整的档名, 如果它不在当前目录中, 必须指定完整的路径名称. 可利

用 mkmessage 公用程序准备讯息文件.

对于 4GL 程序, 这个错误由 -1227 取代.

 

 

-1121   在讯息文件中找不到讯息号码.

 

INPUT, PROMPT, 或 MENU 叙述中包含了一个 HELP 子句, 它指定的讯息号码

在现有的讯息文件中找不到. 讯息文件是由最近一次执行的 OPTIONS HELP

FILE 叙述建立; 请在程序中寻找该叙述, 并查验该讯息文件是否是您要的. 然后重

新检查讯息的原始文件, 并确定其中包含此程序使用的所有讯息号码. 请用

mkmessage 公用程序重新编译讯息文件, 并再试着执行程序一次.

对于 4GL 程序, 这个错误由 -1228 取代.

 

 

-1122   不兼容的讯息文件.

 

在最近执行的 OPTIONS HELP FILE 叙述中的, 讯息档案是无法接受的. 可能在

某方面它已损坏. 可能 OPTIONS 叙述中的档案是讯息的原始文件, 而非编译后

的讯息文件 (mkmessage 的输出). 可能该档是以过时版本的 mkmessage 编译的.

请以该公用程序现有的版本重新编译讯息文件, 并重新检查原始程序, 确定它使用

了正确的讯息文件.

对于 4GL 程序, 这个错误由 -1229 取代.

 

 

-1123   未指定辅助说明档.

 

INPUT, PROMPT, 或 MENU 叙述中包含了一个 HELP '辅助说明号码' 子句; 然而

没有建立任何讯息文件. 讯息文件是由 OPTIONS HELP FILE 叙述建立; 然而并没有

真正执行此叙述. 请重新检查您的程序逻辑, 并加以修改, 以便在需要时执行

OPTIONS HELP FILE 叙述.

对于 4GL 程序, 这个错误由 -1343 取代.

 

 

-1124   这个字段需要键入一个值.

 

光标位于指定为 REQUIRED 的画面表格字段. 您必须键入某个值, 游标才

可以继续移动至下一个字段. 然而, 您可以键入 null 值, 即按下任一可印出的

字符, 然后再按下 backspace. 相对地您可以用插断键取消画面表格键入 (通

常是 CTRL-C, 请参阅程序设计员提供的作业指示).

对于 4GL 程序, 这个错误由 -1305 取代.

 

 

-1125   请再键入一次以确认.

 

光标位于指定为 VERIFY 的画面表格字段. 您必须将输入值键入两次, 两次

的键入要相同, 光标才可以继续移动到下一个字段. 此需求是为了避免键入数据时

打错字. 相对地您可以用插断键取消画面表格键入 (通常是 CTRL-C, 请参阅程

式设计员提供的操作指示).

对于 4GL 程序, 这个错误由 -1306 取代.

 

 

-1126   无法插入另一列 - 输入数组已满.

 

您正将数据键入记录数组中, 在此程序中记录数组是以程序变量的数组来代表

的. 该数组现在已满; 已经没有空间可储存另一个记录. 请按下 ACCEPT 键(通

常是 ESCAPE 键, 但是请参阅程序设计员提供的作业指示) 来继续处理您已键入

的资料.

对于 4GL 程序, 这个错误由 -1307 取代.

 

 

-1127   无法删除列 - 没有数据.

 

您在一个空的列按下了删除列功能键 (通常是 F2, 但是请参阅程序设计员提供的

作业指示). 并不会删除任何数据.

对于 4GL 程序, 这个错误由 -1308 取代.

 

 

-1128   您正继续的方向中没有多余的列.

 

您正尝试在记录的数组中卷动到它的范围之外; 您可能已向上卷动到顶端,

亦可能向下卷动到底端. 如果您继续, 将导致同样的结果.

对于 4GL 程序, 这个错误由 -1309 取代.

 

 

-1129   在画面表格中找不到 BEFORE/AFTER 子句中的字段.

 

这个叙述包含一个 BEFORE FIELD 子句或 AFTER FIELD 子句, 而在子句中

的字段未定义在现在显示的画面表格中. 请重新检查该程序, 确定该画面有显示

并且重新检查该叙述并与画面表格规格比较, 以确定使用已存在的字段. 亦请

查阅讯息 -1102 下的域名附注.

 

 

-1130   相同字段不能有多个 BEFORE 子句.

 

这个叙述中包含了至少 2 个指名同一个画面表格字段的 BEFORE FIELD 子句.

但仅能支援一个 BEFORE FIELD 子句. 请找出所有与同一字段相关的

BEFORE FIELD 子句, 并将它们合并成一个子句.

 

 

-1131   相同字段不能有多个 AFTER 子句.

 

这个叙述中包含了至少 2 个指名同一个画面表格字段的 AFTER FIELD 子句.

仅能支援一个 AFTER FIELD 子句. 请找出所有与同一字段相关的 AFTER FIELD

子句, 并将它们合并成一个子句.

 

 

-1132   CONSTRUCT 叙述的目的字符串不够长.

 

CONSTRUCT 叙述的结果是包含所有使用者所键入的条件之字符串. 该字符串的形

式合于 SELECT 叙述中的 WHERE 子句来使用. 在这个 CONSTRUCT 叙述中,

结果字符串比用来接收它的程序变量更长. 就一般的规则而言, 该变量的长度应提

供足够的空间, 来容纳叙述中所有屏幕域名, 加上容纳字段内容的空间, 和

标点符号及关连操作数. 请重新检查该叙述, 修改接收变量的定义.

 

 

-1133   NEXT OPTION 名称不在选单中.

 

MENU 叙述中有一个 NEXT OPTION 子句使用了未在叙述中定义的 '选单选项' .

在相同的 MENU 叙述中, 接在 NEXT OPTION 后的字符串必须与接在 COMMAND

子句后的字符串一致. 请重新检查该叙述, 确定这些子句的一致性.

 

 

-1134   termcap 输入项没有此功能键.

 

在这个 OPTIONS 叙述中某个子句指定的键没有定义于 termcap 档案 (或是

terminfo 档案, 若使用的是 terminfo 档案). 请重新检查 HELP KEY, INSERT

KEY,NEXT KEY, PREVIOUS KEY, 和 DELETE KEY 子句. 请将它们指定的功能键

与现有的 termcap 定义加以比较.

 

 

-1135   在 DISPLAY AT 的列或栏数已超过您终端机的限制.

 

请重新检查 DISPLAY...AT 叙述. 确定位置的编数顺序正确 (先是列, 然后是栏),

且它们对现有的终端机或窗口而言是有意义的. UNIX 系统的终端机大小是在

程序启动时读取 termcap 信息 (或 terminfo 信息, 由环境变量 INFORMIXTERM

的值) 决定的.因此, 对一个该程序的用户而言正确的屏幕大小, 并不一定对

所有使用者而言都是正确的. 在 DOS 系统中, 窗口大小永远是 24x80.

 

 

-1136   窗口太大放不进屏幕.

 

在这个 OPEN WINDOW 叙述中, WITH 子句所指定的窗口大小可能与屏幕的

大小冲突. 而无法显示整个窗口, 故不会执行该叙述. 如果 WITH 子句指定了大

小, 您可以指定较小的; 如果它指定了画面表格, 则大小是在画面表格规格中的

SCREEN 叙述指定的. 相对地, 您亦可以改变 AT 子句中的窗口起始位置, 使

窗口放得进屏幕. UNIX 系统的终端机大小是在程序启动时读取 termcap 信息

(或 terminfo 信息, 由环境变量 INFORMIXTERM 的值) 决定的. 对一个

该程序的用户而言正确的屏幕大小, 但并不一定对所有使用者而言都是正确的.

在 DOS 系统中, 窗口大小永远是 24 行 每行 80 个字.

 

 

-1137   无法开启窗口.

 

这个问题的原因是内存短缺. 请改变程序的逻辑, 以降低同时开启的窗口数,

或使用较少的广域变量.

对于 4GL 程序, 这个错误由 -1139 取代.

 

 

-1138   边界放不进屏幕. 窗口太大.

 

在 OPEN WINDOW 叙述中描述的窗口无法开启, 因为它的边界与屏幕不合.

虽然讯息是这样说的, 窗口未必真的比屏幕大. 然而无法画出它的一或多个边界

(上, 下, 左或右). 窗口的位置是设定于 OPEN WINDOWS 叙述中; 请确定它的

起始位置没有高于第二列, 或不超过左边第二栏 (不然移除 BORDER 属性). 视

窗的大小是在 OPEN WINDOW 叙述中设定, 或是由它的画面表格决定.

UNIX 系统的终端机大小是在程序启动时读取 termcap 信息 (或 terminfo 信息,

由环境变量 INFORMIXTERM 的值) 决定的. 如果 termcap 记载中包含 sg#1

(terminfo:xmc#1), 4GL 将保留一个额外的栏给窗口的左右边界. 在 DOS 系统中,

窗口大小永远是24x80.

 

 

-1139   画面表格行不能以 LAST 关键词设定.

 

这个 OPTIONS 叙述包含了 使用 LAST 的 FORM LINE 子句. 这是不允许的;

您可以指定绝对的或是与 FIRST 相关的画面表格行, 但是您不能指定它与 LAST

相关.

 

 

-1140   NEXT OPTION 为隐藏选项.

 

在 NEXT OPTION 叙述中的选项已由 HIDE OPTION 叙述隐藏了. 既然使用者无

法看见它, 就不能将它反白成下一选项.

 

 

-1141   无法关闭具有作业中的 INPUT, DISPLAY ARRAY, 或 MENU 叙述的窗口.

 

因为在此窗口中仍有尚在作业的输入作业, 所以无法执行 CLOSE WINDOW 叙述.

CLOSE WINDOW 叙述必须包含于输入叙述中, 或直接从输入叙述呼叫. 请重新

检查程序的逻辑并修订它, 使得在窗口关闭前能完成叙述执行.

 

 

-1142   窗口太小, 不能显示这个画面表格.

 

现有的窗口太小, 不能包含要显示的画面表格. 请重新检窗口的大小, 并与要在

这个窗口显示的画面表格加以比较. 画面表格的大小, 是在画面表格规格文件中

利用SCREEN 叙述建立的. 窗口的大小是由 OPEN WINDOW 叙述设定, 或直接查以

特定的画面表格开启此窗口.

 

 

-1143   窗口已开启.

 

OPEN WINDOW 叙述试图开启已开启的窗口. 请检视程序的逻辑, 查看是否需

有一个 CLOSE WINDOW 叙述, 或是在此处只要使用 CURRENT WINDOW 叙述,

将已开启的窗口放在顶端.

 

 

-1144   无法开启窗口. 窗口的起始位置不在屏幕上.

 

这个 OPEN WINDOW 叙述中, 在 AT 子句内的列及栏的位置指到屏幕实体外面.

该叙述未执行. 请重新检查程序, 并确定数字的顺序正确 (先是列,

然后是行). 经终端机的大小是在程序启动时, 读取 termcap 信息 (或 terminfo

信息, 依照 INFORMIXTERM 环境变量的值) 而定, 因此对某些用户正确的窗口

起始位置, 未必对所有的使用者而言亦是正确的.

 

 

-1145   无法开启 ERROR 窗口.

 

4GL 尝试开启一个具单行, 80 栏的窗口来显示错误讯息, 但是却无法这么做.

可能的原因为数据存储器短缺或内部错误.

对于 4GL 程序而言, 这个错误讯息由 -1319 取代.

 

 

-1146   PROMPT 的讯息太长而放不进窗口.

 

虽然 4GL 截断 MESSAGE 与 COMMENT 的输出, 以配合窗口的大小, 但是对

PROMPT 和用户的响应并没有这种功能. 请缩短提示字符串或将窗口变大.

您可用 DISPLAY 显示大部分的提示文字, 然后提示一个空格或冒号.

 

 

-1147   您不能将未开启的窗口 CLOSE, CLEAR 或使它变成 CURRENT.

 

CLOSE WINDOW, CLEAR WINDOW, 或 CURRENT WINDOW 叙述中指名的

窗口尚未开启或已经关闭. 请重新检查程序的逻辑, 并确定除了开启它的动作外,

没有参考到未开启的窗口.

 

 

-1148   窗口的大小不得为负值.

 

这个 OPEN WINDOW 叙述中的 AT 子句使用了一个负值. 列与栏的大小必须为

正整数. 请重新检查该叙述.

 

 

-1149   在画面表格中侦测到未知的码.

 

目前屏幕显示的画面表格因为某种原因而不接受. 可能它已损坏; 可能它

是由一个旧时版本的 form4gl 编译的. 如果问题重现, 请记下所有的情况并联

络 Informix 技术支持部门.

 

 

-1150   窗口过小, 无法显示选单.

 

重新检查与这个 MENU 叙述一起的现有窗口之 OPEN WINDOW 叙述. 窗口必须至

少有两列高, 且必须够宽才可以显示选单标题, 最长的选项名称可有两组删节号和

6 个空格符. 请重新检查程序, 将窗口加大, 或将选单名称和选项名称缩短.

 

 

-1151   INFORMIX-4GL Run Time Facility.

 

现有的任何产品都没有使用这个讯息. 如果错误重现, 请记下所有的情况并联络

Informix 技术支持部门.

 

 

-1152   请键入范围中的值.

 

这是 INFORMIX-4GL/RF 版本的讯息 -1103/-1301 用于屏幕很小的掌上型终端机.

请参阅讯息 -1103.

 

 

-1153   查验失败 -- 重新键入.

 

这是 INFORMIX-4GL/RF 版本的讯息 -1104/-1302, 用于屏幕很小的掌上型终端机.

请参阅讯息 -1104.

 

 

-1154   无法使用编辑键.

 

这是 INFORMIX-4GL/RF 版本的讯息 -1105/-1303, 用于屏幕很小的掌上型终端机.

请参阅讯息 -1105.

 

 

-1155   请在字段键入值.

 

这是 INFORMIX-4GL/RF 版本的讯息 -1124/-1305, 用于屏幕很小的掌上型终端机.

请参阅讯息 -1124.

 

 

-1156   请再键入值一次.

 

这是 INFORMIX-4GL/RF 版本的讯息 -1125/-1306, 用于屏幕很小的掌上型终端机.

请参阅讯息 -1125.

 

 

-1157   没有多余的列.

 

这是 INFORMIX-4GL/RF 版本的讯息 -1127/-1309, 用于屏幕很小的掌上型终端机.

请参阅讯息 -1127.

 

 

-1158   FMP 已用尽内存.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1159   FMP 已超过允许的并行的 INPUT 叙述数目.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1160   FMP 已超过允许的并行的 DISPLAY ARRAY 叙述数目.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1161   FMP 现在不在 INPUT 叙述中.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1162   FMP 已超过并行开启的画面表格限制数目.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1163   FMP 版本与 4GL 程序不兼容. 请重新链接 4GL 程序并再执行一次.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1164   在画面表格的 INSTRUCTIONS 区段中指定的 NEXT FIELD 没有

        用在现有的 INPUT 叙述中.

 

现有的画面表格字段有 NEXT FIELD 规格 (在这个画面表格中的 INSTRUCTIONS

区段). 然而, 指定的下一字段未在现有的 INPUT 叙述中, 因此光标无法移动

至该字段.

 

 

-1165   在 FMP 中不允许有这个叙述.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1166   从 FMP 接收到不合法的码.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1167   FMP 接收到未知的画面表格名称.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1168   指令未出现在选单中.

 

SHOW OPTION, HIDE OPTION, 或 NEXT OPTION 叙述中无法参考到不存在的选项

(指令). 请检查选项名称之拼法.

 

 

-1170   您使用了系统不认识的终端机.

 

请检查您的 TERM 环境变量的设定及 TERMCAP, 或 TERMINFO 环境变量的设定.

如果您需要协助, 就请教系统管理员.

 

 

-1171   FMP 遇到了不允许的数据类型.

 

FMP 是指 INFORMIX-4GL/RF. 请参阅您的系统的安装文件.

 

 

-1200   数值对 DECIMAL 数据类型而言太大了.

 

浮点 DECIMAL 数据类型的绝对值范围为 10 到

第 -130 power 及 10 到 第 124 power.

而其精准度 (有意义的数字数目) 从 1 到 32;

然而这个错误的来源不是因为数字的长度

而是因为它的大小.

 

 

-1201   数值对 DECIMAL 数据类型而言太小了.

 

DECIMAL 数据类型的绝对值范围为 10 到第 -130 power 及 10 到 第 124 power.

而其精准度 (有意义的数字数目) 从 1 到 32; 然而这个错误的来源不是因为数字的

长度而是因为它的大小.

 

 

-1202   尝试除以 0.

 

除数不准许为 0. 在某些情形下, 这个错误是因为除数为没有正确转换成数字数

值的字符.

 

 

-1203   在 MATCH 中所用的值必须皆为 CHARACTER 类型.

 

MATCHES 关系只能应用在字符数据上; 两个操作数皆必须是 CHAR 或

VARCHAR 字段或变量或文字字符串. 如果您需要应用普通表达式以匹配

一个数值, 您可以在4GL 中将数字数值指定给 CHAR 变量, 然后再测试那个变量.

 

 

-1204   日期中的年不正确.

 

在 DATE 数值或文字中的年份必须有 2 个或 4 个十进制的数字, 也就是

从 00 到 99 或从 0001到 9999.  0000 和其他位数的数字是不接受的.

 

 

-1205   在日期中的月不正确.

 

在 DATE 数值或文字中的月份, 必须为范围从 1 至 12 的 1 或 2 位数数字.

 

 

-1206   在日期中的日不正确.

 

在 DATE 数值或文字中的日期号码, 必须为 1 或 2 位数的数字. 依照月份

范围为 1 至 28 (闰年则为 29)、30 或 31.

 

 

-1207   转换后的值与放不进分配的空间.

 

一个非字符的值, 在转换成字符字符串后, 因为太长而无法放入所提供的缓冲区.

如果转换是自动完成的, 请修改程序以提供较大的主机变量, 来接收该字符串.

如果是明确地呼叫转换函数, 请传送较大的缓冲区.

 

 

-1208   不能将非字符值转换成字符值.

 

如果您使用 4.0 版以前的数据库服务器, 在如 INSERT 和 UPDATE 的 SQL

叙述中, 没有自动将数值转换成字符的功能. 请确定指定给每个栏的值与该

栏的型态需一致. 在 4.0 或之后的数据库服务器, 不应出现这个讯息.

 

 

-1209   如果没有分界符号, 日期必须包含刚好 6 或 8 个数字.

 

当文字日期值以数值的形式键入时, 若没有以引号括起来使它成为字符字符串,

在键入时必须刚好打 6 位数 (代表 mmddyy) 或 8 位数 (代表 mmddyyyy).

既然没有标点符号, 若日期是其他位数的数字, 则会含糊不清; 也就是无法确实

将日期切成月, 日, 年.

 

 

-1210   日期无法转换成 月/日/年 格式.

 

DATE 类型与 INTERGER 类型兼容, 但不是所有的整数数值都是正确的日期.

这个错误发生在将小于 -693,594, 或大于 2,958,464 的日期数值转换成字符.

在这个范围之外的数值不能代表日期.

 

 

-1211   内存用尽.

 

4GL 无法配置内存给用来处理表达式的小暂时工作区, 以各种方法简化程序

以释放足够空间来避免此错误.

 

 

-1212   日期转换格式必须包含月, 日, 年.

 

当日期数值在内部的二进制格式和显示或键入格式间转换时, 是由一个样式

转换的. 在自动转换时, 是从环境变量 DBDATE 中取得样式的. 当利用明

确呼叫 rfmtdate(), rdefmtdate(), 或 USING 函数来完成这件工作时. 将样

式字符串会当成参数传送. 不论在任何情况下, 样式字符串 (讯息的 "格式") 必须包

含显示日期的 3 个部份的字母: 2 或 3 个字母 d; 2 或 3 个字母 m; 2 或 4

个字母 y.

 

 

-1213   字符转换至数字程序失败.

 

字符值正在转换成数字型式, 以储存在数字栏或变量中. 然而, 字符串无法解

释成数字: 它包含了除了空白, 数字, 正负号, 小数点, 或字母 e 以外的字符,

或者是各部份的次序错误, 使得数字无法解译.

如果您正在使用 NLS, 您的区域化环境所用小数点与千位分隔符可能有误.

 

 

-1214   数值太大, 放不进 SMALLINT.

 

SMALLINT 数据类型接受的数值, 为在 0 和 32,767 正或负之间(2 到 第 15

power). 如果要储存这个范围以外的数字, 该栏或变量必须重新定义为使用

INTEGER 或 DECIMAL 类型. (-32,768 这个数是一个 16-bit 的数, 但不是

可接受的数值. 用在 4GL 中是代表 null 值).

 

 

-1215   数值太大, 放不进 INTEGER.

 

INTEGER 数据类型接受的数值, 为在 0 和 2,147,483,647 (231-1) 之间的

绝对值. 如果有必要储存这个范围以外的数字, 该栏或变量必须重新定义为使用

DECIMAL 类型. (-2,147,483,648 这个值是一个 32-bit 的数, 但不是可接受

的值. 用在 4GL 中是代表 null 值).

 

 

-1216   不合法的指数.

 

数值的指数部份不能超过 32,767. 事实上, 没有任何数据类型可以有这么

大的指数; 然而这个讯息是在检查该数值的目的地之前, 由指数本身触发.

请检查叙述中是否有遗失或错放的标点符号, 而使得两个数值并在一起.

 

 

-1217   格式字符串太大.

 

用来格式化日期(DBDATE 环境变量, 或传给 rfmtdate() 的样式, 或是

USING 函数) 的样式字符串太长. 限制为 80 个字节.

 

 

-1218   字符串转换至日期错误.

 

rstrdate() 函数的输入, 未能有适当的代表日期: 可能在期望数字之处出现

非数字, 或是未预期的分界符号, 或是数字太大或不一致.

 

 

-1219   从数据库来的值对 COBOL 数据项而言太大.

 

现有的任何产品都没有使用这个讯息. 如果错误重现, 请记下所有的情况并联络

Informix 技术支持部门.

 

 

-1220   从数据库来的值对 COBOL 数据项而言太小.

 

现有的任何产品都没有使用这个讯息. 如果错误重现, 请记下所有的情况并联络

Informix 技术支持部门.

 

 

-1221   无法转换 null 数据类型.

 

现有的任何产品都没有使用这个讯息. 如果错误重现, 请记下所有的情况并联络

Informix 技术支持部门.

 

 

-1222   数值将放不进 SMALLFLOAT.

 

SMALLFLOAT 数据类型可接受特定指数范围的数值. 依主机操作系统的不同,

最大和最小的指数数值亦不同 (范围与该主机系统的 C 编译程序的 float 数

值相同). 在现有的叙述中, 某个常数转换成 FLOAT 以储存在 FLOAT 变量

或栏, 而它的指数太大或太小.

 

 

-1223   数值将放不进 FLOAT.

 

FLOAT 数据类型可接受特定指数范围的数值. 依主机操作系统的不同最大和

最小的指数数值亦不同 (范围与该主机系统的 C 编译程序的 double 数值相同).

在现有的叙述中, 某个常数转换成 FLOAT 以储存在 FLOAT 变量或栏, 而它的

指数太大或太小.

 

 

-1224   不正确的十进制数.

 

现有的产品都不会使用这个讯息. 若这个错误再度发生, 请记下所有的情况, 并洽询

Informix 技术支持部门.

 

 

-1225   栏中不准许有 NULL 值.

 

这个叙述尝试将 null 值储存在已定义为不准许 null 值的栏. 请重新检查表

格的定义, 并修订该叙述使得它可提供值给所有需要的栏.

 

 

-1226   十进制或金钱数值已超过最大精度.

 

4GL 正试图将数字从字符格式转换成 DECIMAL 或 MONEY 变数. 然而, 小数点左

侧有比该变量宣告的数字比准许的还多. 请修订程序, 并将转换后的数字指定给较

高精准度的变数.

 

 

-1227   找不到讯息档案.

 

4GL 无法定位讯息本文档案. 该档案应有 .iem 扩展名, 并在产品中的

$INFORMIXDIR/msg 目录. 请重新安装这样的档案. 如果您已经修改了使用者

讯息文件 4glusr.msg, 请检查编译后的档案已将正确目录中的原档案取代.

 

 

-1228   讯息号码在讯息文件中找不到.

 

4GL 无法在讯息文件中找到应有的讯息号码. 重新安装所有 .iem 的档案.

如果您已修改了 4glusr.msg 的内容, 请重新检查您所做的删除, 并重新

编译该档.

 

 

-1229   不兼容的讯息文件.

 

4GL 试图从讯息文件中查阅讯息档案, 而档案中有与目前产品的版本不匹配的内容.

可能是档案毁损; 可能讯息档案是之前的版本. 这个档案有 .iem 扩展名, 并存

在于 INFORMIXDIR 环境变量所指定的目录下的 etc 子目录. 请重新安装这些档案.

如果您修改了用户讯息文件 4glusr.msg, 请确定以现行版本的 mkmessage 公用

程序重新编译它.

 

 

-1230   讯息文件名公式不良.

 

您所提供用来显示如本书所列的错误讯息的讯息文件名不正确因此无法开启.

如果有指定 DBLANG 环境变量, 请检查它的内容.

 

 

-1231   无法在讯息文件中搜寻.

 

应用程序试图从讯息档案找到某一讯息本文. 而在档案内定位时收到错误码.

这种情况指出档案本身有问题; 可能案已毁损或截断, 请重新安装所有

.iem 的档案. 如果修改了用户讯息文件 4glusr.msg, 亦请重新编译它.

 

 

-1232   消息缓冲区太小.

 

4GL 从编译过的讯息文件中读取消息正文, 而无法将缓冲区的大小调整至够大,

以保留完整的讯息. 这可能指的是数据空间不足, 但更可能的是损坏或不

正确的讯息档案. 从产品重新安装所有 .iem 的档案. 如果您修改了使用

者讯息文件 4glusr.msg, 亦请重新编译它.

 

 

-1233   不正确的时, 分, 或秒.

 

现有的任何产品都没有使用这个讯息. 请记下所有的情况并联络 Informix

技术支持部门.

 

 

-1234   函数只能应用于 datetime 数据类型.

 

现有的任何产品都没有使用这个讯息. 请记下所有的情况并联络 Informix

技术支持部门.

 

 

-1235   字符主机变量对数据而言太短了.

 

ESQL/C 程序试图将域值放入一个不够大的主机变量. 请使用 DESCRIBE

指令找出域值之大小.

若是发生在 4GL 程序中, 请记下所有的情况并联络 Informix 技术支持部门.

 

 

-1250   无法建立管道.

 

您的应用程序正使用称为管道的操作系统设施进行与数据库服务器的初始化工

作. 而操作系统传回未预期的错误码. 请查阅操作系统错误讯息, 以得到更多信息.

 

 

-1251   无法建立共享内存. semget 失败.

 

您的应用程序正在初始化与数据库服务器的通讯, 而通讯的方法是使用共享的

内存. 在使用操作系统函数 semget 时发生未预期的错误. 查阅操作系统讯息,

以得到更多细节. 并请教安装 Informix 共享内存产品的人员.

 

 

-1252   无法建立共享内存. semget 失败.

 

您的应用程序正在初始化与数据库服务器的通讯, 而通讯的方法是使用共享的

内存. 在使用操作系统函数 shmget 时发生未预期的错误. 查阅操作系统讯息,

以得到更多细节. 请教安装 Informix 共享内存产品的人员.

 

 

-1254   无法连接上远程主机.

 

程序正尝试开启由另一系统管理的数据库服务器, 但是无法开启至其他系统

的网络连接. 请检查在 DATABASE 或 CREATE DATABASE 叙述中指定的

site 名称. 如果它是如您预期的, 请查阅网络组件或操作系统发出的错误讯息.

并请联络另一系统的操作员, 并查证它是否存在作业中并可接受网络连接.

 

 

-1257   操作系统无法为后端衍生程序.

 

"后端" 指的是数据库服务器. 这是内部错误. 请查阅能提供更多细节的作业系

统讯息. 在 DOS 系统中, 您可能内存不足, 请回到操作系统的指令行,

并重新执行您的程序. 在确认这不是系统限制的结果或本地的问题后, 请记下

所有的情况并联络 Informix 技术支持部门.

 

 

-1258   无法连上用来与后端通讯的共享内存.

 

后端 指的是数据库服务器. 这是内部错误. 请查阅能提供更多细节的操作系统

讯息. 在确认没有系统限制的结果或本地的问题后, 请记下所有的情况并联络

Informix 技术支持部门.

 

 

-1260   不可能在指定的类型间转换.

 

系统将会尝试任何合理的数据转换. 然而一些例如 INTERVAL 转换到 DATE, 或

DATETIME 转换到 MONEY 是不支持的. 您可能参考到错误的变量或栏. 确定

您指定了您要希望的数据类型, 而且数据值的表现格式正确.

 

 

-1261   datetime 或 interval 的第一个字段有太多数字.

 

DATETIME 文字的第一个字段若不是 1 或 2 个数字 (如果不是 YEAR ) 就必

需是 2 个或 4 个数字 (如果是 YEAR ). INTERVAL 文字的第一个字段代表

单位的计数, 依照它的限定符中指定的精准度, 最多可能到 9 个数字. 请重新检

查在这个叙述中的 DATETIME 和 INTERVAL 文字, 并修改它们.

 

 

-1262   在 datetime 或 interval 中有非数字字符.

 

DATETIME 或 INTERVAL 文字的型式有许多限制. 其中只能有十进制数和准许

的分界符号: 年月日之间的连字符; 时分秒之间的冒号; 秒和几分之几秒之间的

小数点. 任何其他的字符, 或错误的顺序, 会产生错误.

 

 

-1263   datetime 或 interval 字段超出范围或不正确.

 

检查叙述中 DATETIME 和 INTERVAL 文字; 至少它们其中之一有不正确的

字段. 在一个 DATETIME 文字中, 年可能为 0; 月可能在 1 到12 以外; 日可能

在 1 到 31 以外; 时可能在 0 到 23 以外; 分或秒可能在 0 到 59 以外; 或秒以下

的位数太多超过指定的精准度对指定的精度而言位数太多了.

在一个 INTERVAL 文字中, 除了第一个字段是计数, 并可能有与限定符所指定

一样多的位数外, 其限制是相同的.

 

 

-1264   在 datetime 或 interval 尾端有多余的字符.

 

DATETIME 或 INTERVAL 文字后只能有空白. 请检查这个叙述是否有遗失的或

不正确的标点符号.

 

 

-1265   datetime 或 interval 运算溢位.

 

DATETIME 和 INTERVAL 值在内部储存成 DECIMAL 数值. 在这个叙述中, 使用

DATETIME 及(或) INTERVAL 值的运算已引起了数值溢位. 这是不应该发生的事.

请检查 INTERVAL 值的精准度. 如果您希望键入的 INTERVAL 数值超过了这个字段

准许的预设长度, 您必须于定义中明确地指定有意义的位数. 如果错误重现, 请记下

所有的情况并联络 Informix 技术支持部门.

 

 

-1266   Intervals 或 Datetimes 与运算不相容.

 

某些 DATETIME, INTERVAL 和数值的算术组合是无意义并且不允许的. 请重新检查

这个叙述中的数学表达式. 可能有一个表达式误用了 DATETIME 栏, INTERVAL

栏或变数. 如果不是的话, 请参阅您的 SQL 参考文件来正确使用这些数据类型.

 

 

-1267   datetime 的计算结果超出范围.

 

在这个叙述中, 产生了无法储存的数值. 如果将非常大的间隔加至 DATETIME,

会发生这种情形. 请重新检查叙述中的表达式, 并查看是否您可以改变运算的

顺序以避免溢位.

 

 

-1268   不合法的 datetime 或 interval 限定符.

 

这个叙述包含不能接受的 DATETIME 或 INTERVAL 限定符. 这些限定符只可有

YEAR, MONTH, DAY, HOUR, MINUTE, SECOND, FRACTION, 和 TO 等文字.

FRACTION 后面可以接着由括号括起来的数字 1 至 5. 检查错误的标点符号和

拼法. 常见的错误是加上一个 's' , 如 MINUTES的s, 这样是不正确的.

 

 

-1269   定位器转换错误.

 

因为函数需要一个定位器做为自变量 (参考到 BYTE 或 TEXT 值), 但是接收到

的不是正确的定位器 (如一个 NULL 参数因而发出此讯息). 请重新检查程序的

逻辑, 以确定自变量的正确性. 如果错误重现, 请记下所有的情况并联络 Informix

技术支持部门.

 

 

-1270   Interval 文字不能有崁入的负号.

 

您可以在 INTERVAL 文字与其他的数值间使用了负号, 当成 INTERVAL 文字的

前缀, 以显示这个值是负的. 然而, 您不能在文字的字段间加上负号. 如果您不

是有意这样做, 请检查叙述中遗失的或错放的标点符号.

 

 

-1271   在 datetime 或 interval fraction 中缺少小数点.

 

若当在文字中的限定符有 FRACTION 这个字, 在 DATETIME 或 INTERVAL 文字

中应有小数点. 这个叙述有这样的文字, 但是没有找到小数点.

 

 

-1272   未指定输入缓冲区.

 

您没有指定这个函数的输入字符串, 所以无法进行转换. 请设定输入字符串自变量并

再呼叫函数一次. (这个函数可能需要以 DBTIME 环境变量定义格式化引导).

 

 

-1273   输出缓冲区为 NULL 或太小, 无法保留结果.

 

当呼叫函数时, 若输出缓冲区的地址空间为 NULL 或小于格式字符串长度时,

会传回这个错误. 重新定义地址的大小, 并再执行此函数一次. (这个函数可

能需要以 DBTIME 环境变量定义格式化引导.)

 

 

-1274   未指定输出缓冲区.

 

这个错误讯息是因为输出缓冲区长度为 0, 或缓冲区指标为 null 指标. 该错

误讯息在 5.01 版后的数据库服务器不使用.

 

 

-1275   datetime 或 interval 格式字符串中有不正确的字段宽度或不正确的

        精准度.

 

在 DATETIME 或 INTERVAL 格式规格中的字段宽度或精准度必须合理.

字段宽度必须为 10 进位数字, 并以 0 或负号 (-) 开头. 如果有精准度规格,

不必须是 10 进位数字, 并与字段宽度规格以点 (.) 分隔.

 

 

-1276   不支持格式转换字符.

 

在格式字符串中的格式转换字符不正确. 检查字符串与崁入语言产品手册的格式转换

导引相关的 DATETIME 和 INTERVAL 格式转换函数. 亦请参阅

<<Informix Guide to SQL: Reference>> 的第 4 章参考 DBTIME 环境变量.

 

 

-1277   输入不符合格式规格.

 

检查包含 DATETIME 或 INTERVAL 值的 ASCII 字符串是否符合格式字符串. 例

如,  DATETIME 或 INTERVAL ASCII 字符串的百分比字符必须在格式字符串中具

有相符的 "%%." 序列. 也可以参阅 Informix Guide to SQL: Reference 中, 关

于 DBTIME 环境变量的讨论.

 

 

-1278   不正确的 escape sequence.

 

检查在叙述中 LIKE 或 MATCHES 子句中的样式匹配字符串. 在一个 ANSI 资

料库中, 唯一可以跳出的正确字符为: %, _, 及 LIKE 子句的跳出字符, 及 *, ?,

[, ], 和 MATCHES 子句的跳出字符.

 

 

-1301   这个值不在正确的可能数值范围内.

 

这个栏已建立了可接受的值清单或范围 (透过在画面表格规格文件的 INCLUDE

属性). 您必须键入可接受范围内的值.

 

 

-1302   两个输入不相同 -- 请再试一次.

 

为了防止打字错误, 这个字段已指定为 VERIFY (在画面表格规格文件中).

在这个字段中的值必须键入两次, 两次键入必须相同. 重新键入时请小心.

相对地您可以用插断键取消画面表格键入 (通常是 CTRL-C, 请参阅程序设计

员提供的作业指示).

 

 

-1303   因为有格式存在, 您无法使用这个编辑特性.

 

这个字段定义了 PICTURE 属性来指定它的格式 (在画面表格规格文件中).

当您编辑这种字段时, 您不能使用某些特定的编辑键 (如 CTRL-A, CTRL-D,

和 CTRL-X). 而仅能输入可印字符或 backspace.

 

 

-1304   字段错误.

 

您在这个字段中键入了程序变量无法接受的值. 例如, 可能您在整数变量中

键入了小数数值; 或是您键入了比应用程序所期望更长的字符字符串. 请记下

所有的情况, 然后与写这个程序的人讨论.

 

 

-1305   这个字段需要键入一个值.

 

光标正位于指定为 REQUIRED 的画面表格字段. 您必须键入某个值,

光标才可以继续移动至下一个字段. 然而, 您可以键入 null 值, 即按下任

一可印字符, 然后再按下 backspace. 相对地您可以用插断键取消画面表格

键入 (通常是 CTRL-C, 请参阅程序设计员提供的作业指示).

 

 

-1306   请再键入一次以确认.

 

光标正在指定为 VERIFY 的画面表格的字段中. 您必须将一个值键入两次,

两次的键入要相同, 光标才可以继续移动到下一个字段. 这是为了避免键入

资料时打错字. 相对地您可以用插断键取消画面表格键入 (通常是 CTRL-C,

请参阅程序设计员提供的作业指示).

 

 

-1307   无法插入另一列 - 输入数组已满.

 

您正将数据键入记录数组中, 在程序中记录数组是以变量数组来代表的. 该数组

现在已满; 已经没有空间可储存另一个记录. 按下 ACCEPT 键 (通常是 ESCAPE

键, 但是请参阅程序设计员提供的作业指示) 来继续处理您已键入的数据.

 

 

-1308   无法删除列 - 它没有数据.

 

您在一个空的列按下了删除列功能键 (通常是 F2, 但是请参阅程序设计员提供

的作业指示) 并不会删除任何数据.

 

 

-1309   您正继续的方向中没有更多的列.

 

您正尝试卷动记录的数组到它的范围之外; 您可能已向上卷动到顶端, 亦可能

向下卷动到底端. 如果您继续, 将导致同样的结果, 但是还是可以继续卷动数组.

 

 

-1312   FORMS 叙述错误码 '号码' .

 

屏幕画面表格有问题. 请在本文件中查阅错误 '号码' . 思考它和目前叙述的关系.

 

 

-1313   SQL 叙述错误码 '号码' .

 

现有的叙述呼叫了数据库服务器, 而数据库服务器侦测到一个错误, 并传回错误

码 '号码' . 请在本文件中查阅该 '号码' . 同时亦查阅其他错误讯息.

 

 

-1314   程序在 '叙述' 的行号 '行' 停止.

 

程序在指出的点侦测到错误. 查阅其他可以提供的更多详细数据的错误讯息.

使用本讯息提供的值以在原始程序档案中找到错误的地方.

 

 

-1315   4GL 执行期间之错误码 '号码' .

 

程序已因为侦测到错误而停止. 在本文件中查阅错误码 '号码' . 亦请查阅其他

错误讯息以得到更多详细资料.

 

 

-1316   ISAM 错误码 '号码' .

 

目前的叙述呼叫了数据库服务器, 但是数据库服务器侦测到一个错误 (可能以错

误 -1313 显示). 这个讯息包含额外的错误原因细节. 在本文件中查阅错误码为

'号码' 的错误码.

 

 

-1317   因为呼叫程序与它的函数参数不兼容, 或变量和指定的表达式不相容,

        而发生数值转换错误.

 

4GL 可自动在两种数据类型中转换, 而不会遗失信息. 在现有的叙述中, 并

无法这样做请先查看函数呼叫, 再检查参数值. 确定传来的值与函数中定义的

参数类型相同. (这种错误的范例为呼叫一个函数 fun("X"), 而在函数内部的

参数定义 为整数). 如果叙述为一个 LET 叙述, 请检查在叙述右侧计算出的

值与左侧的变量可以互相配合.

 

 

-1318   呼叫函数和被呼叫函数之间参数个数不相符.

 

呼叫函数时可能给了太多或太少的参数. 这个呼叫的原始模块与被呼叫的函数

可能不在同一个模块. 请检查函数的定义, 并检查所有呼叫它的地方, 以确定

使用的参数个数是宣告的参数个数.

 

 

-1319   4GL 程序已用尽执行时的数据存储器空间.

 

您必须减少程序所需的数据空间. 请重新检查大尺寸的字符变量, 和数组的维数.

如果可能的话, 可能需要将程序切成可分别加载的程序.

 

 

-1320   函数没有传回呼叫函数所期望的正确值个数.

 

如果是在一个表达式中呼叫了一个函数, 则它传回了一个以上的值. 如果

它是以 CALL 叙述呼叫, 则在 RETURN 后的表达式个数 (在函数中的) 与在

RETURNING 子句 (在CALL 叙述内) 中的变量个数不同.

确定您呼叫了正确的函数. 请重新检查函数的逻辑, 特别是 RETURN 叙述,

以确定它永远传回您期望的值个数.

 

 

-1321   VALIDATE 指令的验证结果错误.

 

VALIDATE 叙述测试现有的变量值, 和储存于 syscolval 表格中的规则比对.

并侦测到有匹配错误发生. 通常程序使用 WHENEVER 叙述来设陷捕捉这个错

误, 并显示或修改这个错误的值. 请检查 VALIDATE 叙述以查看那些变量已

测试, 并找出它错误的原因.

 

 

-1322   报表输出档案无法开启.

 

在 REPORT TO 叙述中指定的档案无法开启. 检查您的账户有写入该档的权限,

且磁盘空间未满, 同时您没有超过开启档案的限制数.

 

 

-1323   报表的输出管道无法开启.

 

指定在 REPORT TO PIPE 叙述的管道无法启动. 检查其中提到的所有程序皆存

在, 且在您的执行路径可存取到它. 请查阅操作系统讯息, 以更能确定错误发生

的原因.

 

 

-1324   报表输出文件无法写入.

 

在 REPORT TO 叙述指定的档案已开启, 但是写入时发生错误. 可能磁盘

空间已满. 请查阅操作系统讯息, 以得到更多信息.

 

 

-1326   一个数组变量参考到它指定的维数外.

 

数组的下标表达式产生了一个小于 1 或大于数组中的元素数目的数值. 请重

新检查直到这个叙述的程序逻辑, 以便找到错误发生的原因.

 

 

-1327   无法准备一个插入叙述来插入列到报表所用的暂时表格.

 

在报表函数中, 4GL 产生了将列储存至暂时表格中的 SQL 叙述. 叙述的动态

准备中产生了错误 (请参阅 PREPARE 叙述的参考数据). 可能的原因是数据

库表格尚未在执行期间定义, 可能是数据库已改变, 或是执行时与编译时选择的

数据库不同. 另一个可能性是数据库管理员已将您在报表中的一或多个表格的

SELECT 权限撤消. 请查阅其他错误讯息, 以得到更详细的信息.

 

 

-1328   报表需要的暂时表格无法在选取的数据库上建立. 使用者必须有在所选

        取的数据库上建立表格的权限.

 

在报表定义中, 4GL 产生了将列储存至暂时表格中的 SQL 叙述. 然而暂存表

格无法建立. 最可能的原因是在数据库中的磁盘空间不足. 另一个常见的原因

是在数据库中已有与暂时表格同名的表格存在. 暂时表格是报表建立做为排序

表格之用. 排序表格名称为 "t_reportname". (例如, 名为 "order_rpt" 的报表将

它的排序表格称为 "t_order_rpt"). 因此,  提示使用者避免使用以 "t_" 开头来

命名表格. 另外一个错误 -1328 的可能原因是在某些数据库服务器上, 您已超过

了操作系统准许开启档案的最大值. 请查阅其他的错误讯息, 以得到更多详细信息.

 

 

-1329   无法为报表所需要的暂时数据库表格建立数据库索引.

 

在报表定义中, 4GL 产生了将列储存至暂时表格中的 SQL 叙述. 然而, 无法

在暂时表格中建立索引. 最可能的原因是相同名称的索引已存在于数据库中

(排序用的索引名称为 "i_reportname"; 如 "i_order_rpt"). 另一个常见的原因是档

案系统或 dbspace 中没有可用空间. 还有一种可能是在某些数据库服务器上, 您

已超过了操作系统准许开启档案的最大值. 请查阅其他的错误讯息, 以得到更多

详细信息.

 

 

-1330   无法在暂时报表表格中插入一列.

 

在报表定义中, 4GL 产生将列储存至暂时表格中的 SQL 叙述. 然而在插入列时

发生错误. 最可能的原因是数据库中没有磁盘空间. 若要知道详细原因, 请查阅

其他的错误讯息, 以得到更多细节.

 

 

-1331   无法从暂时报表表格中取得一列.

 

在报表定义中, 4GL 产生了从暂存表格中选取列的 SQL 叙述. 该表格已正常

建立, 但是在从中撷取列时发生错误. 唯一最有可能的原因是硬件故障或数据库

服务器的错误. 若要知道详细原因, 请查阅其他的错误讯息, 以得到更多细节.

 

 

-1332   字符变量参考到超出范围的下标.

 

在现有的叙述中, 有一个用来取字符值子字符串的变量, 其值小于 1, 或其值大于

变量的长度, 或第一个子字符串表达式大于第二个. 请重新检视执行到此行叙述为

止的程序逻辑, 找出错误的原因.

 

 

-1333   长度大于 512 的字符串, 不能从函数的呼叫传回.

 

现有的 RETURN 叙述, 包含了字符串长度长于 512 个字符的表达式. 未支援这种

状况. 重新检视函数的逻辑并加以修改, 使得它不会传回如此的长字符串值.

您可以设定较长的字符串给广域变量.

 

 

-1334   4GL 程序无法配置任何空间来储存暂时的字符串.

 

这个讯息在以 4.1版以上的版本编译的程序中看不到, 但在以 4GL 4.1 版或更

早的版本编辑的程序就会出现.

当在处理字符表达式的时候, 会用到 "暂时" 字符储存, 它是从固定大小的缓冲

区, 利用简单的算法配置而得. 在缓冲区内的空间会直到未决的字符表达式

结束后, 才会收回. 因为大部分的表达式可以立即完成的话, 那么字符串的缓冲区通

常会以很快的速度回到净空的状态.

但是当表达式牵涉到函数呼叫时, 在函数呼叫期间表达式的运算会延迟. 缓冲区

会在函数回传后才清除, 例如暂时空间是在下面叙述中做为常数 "###" 及 USING

运算符的结果:

LET charvar = numvar USING '###', myfunc()

在对 myfunc() 呼叫的期间, 这些未决的值会保留在字符串缓冲区. 如果在对

myfunc() 和子功能的运算期间, 所有暂时字符值的累积总值超过缓冲区大小,

就会产这个错误.

要预防这个错误的发生, 通常是对函数呼叫使用一个别的叙述, 如下所示

LET charvar = myfunc()

LET charvar = numvar USING '###', charvar clipped

在呼叫 myfunc() 时, 第一个叙述中的字符串缓冲区是可用的, 并且在第二个叙

述完成时会立即成为可用的状态.

在 CASE 叙述中的 WHEN 子句的较短表格, 也建立了一个暂时的字符表达式.

在下列暂时字符串储存的例子中, 将透过对 func_A() 与 func_B() 的呼叫连结在

一起.

CASE Charvar

WHEN 'A' CALL func_A()

WHEN 'B' CALL func_B()

...

WHEN 子句的较长表格并不如此做, 因为字符表达式的运算已于函数呼叫开始

前完成.

CASE

WHEN Charvar='A' CALL func_A()

WHEN Charvar='B' CALL func_B()

最后, 在 INFORMIX-4GL 4.1 版的某些版本中的一项已知错误, 当

WORDWARP 子句出现于 PRINT 叙述中, 会引起这类型不合逻辑的错误. 如

果错误再次发生, 请记下所有的环境状况, 并联络 Informix 技术支持部门.

 

 

-1335   报表正在接受输出, 或在启动前结束了.

 

程序执行 OUTPUT TO REPORT 或 FINISH REPORT 叙述之前, 没有先执行

START REPORT 叙述. 重新检视执行到此叙述为止的程序逻辑, 以便找出错误

的原因.

 

 

-1336   在 pcode 档案中的模块 '名称' 包含了 pcode 版本 '编译-版本' . 这个程序

        可以执行 pcode 版本 '使用者-版本' . 使用 -V 选项执行 pcode 编译程

        式, 以检查它所产生的 pcode 版本. 然后重新编译程序的所有模块并再

        执行一次.

 

程序 runner 或自定义的 runner 必须与编译程序版本相同. 请分别用 -V 选项执行

这两个程序, 以确定它们的层级相同. -V 选项将显示它们的版本号码. 当您确定

所所使用的软件是兼容的, 请重新编译您的程序.

 

 

-1337   变量 '名称' 已经以不同类型或长度重新定义.

 

显示的变量定义在两个或以上的模块中的 GLOBALS 区段, 但是它在某些模块中

的定义与其他的不同. 可能模块是在不同的时间编译的, 其间对共享的 GLOBALS

档案做了一些改变. 也可能有些没有包含 GLOBALS 档案的模块,

将该变量宣告成模块变量.

 

 

-1338   函数 '名称' 并未在程序中的任何模块定义过.

 

程序中至少有一个模块呼叫了该函数, 但是该函数没有定义在任何一个模块中.

如果您正在使用程序设计员的环境, 可能是没有定义某一个模块为多模块程序

中的一部份. 如果您正在指令列上工作, 可能在结合程序档案成 .4gi 档案时,

有一个或数个编译好的 .4go 模块被忽略了.

 

 

-1339   无法在叙述指针表格中找到广域变量 '名称' .

 

这是 runner 的内部错误. 如果错误再度发生, 请记下所有情况状况, 并联

络 Informix 技术支持部门.

 

 

-1340   错误登录档案未启动.

 

程序已呼叫了 errorlog() 函数, 但是没有先呼叫 startlog() 函数. 重新检视程

式的逻辑以找出这个错误的原因.

 

 

-1343   未指定辅助说明档.

 

INPUT, PROMPT, 或 MENU 叙述中包含了一个 HELP 'help-number' 子句;

然而并没有建立讯息文件. 讯息文件是由 OPTIONS HELP FILE 叙述所建立; 但是

尚未执行. 请重新检视您的程序逻辑并加以修改, 以在需要讯息文件前执行有

HELP FILE 子句的 OPTION 叙述句.

 

 

-1344   INFORMIX-4GL Run Time Facility.

 

这个讯息没有在任何现有的 Informix 产品中显示.

 

 

-1345   未定义的 opcode.

 

这个程序的 p-code 档案 (扩展名为 .4go) 已毁损. 请重新编译整个程序并再执行

一次. 如果又发生相同的错误, 请确定您执行的 p-code 编译程序和 p-code

runner 的版本相同. 如果错误再度发生, 请记下所有的情况并联络 Informix

技术支持部门.

 

 

-1346   数值对 DECIMAL 数据类型而言太大.

 

DECIMAL 数据类型的绝对值范围为 10**-130 到 10**124. 而其精准度 (有意

义的数字位数) 从 1 到 32; 然而此项错误的来源不是由于数字的长度, 而是因

为它的大小.

 

 

-1347   数值对 DECIMAL 数据类型而言太小.

 

DECIMAL 数据类型的绝对值范围为 10**-130 到 10**124. 而其精准度 (有意

义的数字数) 从 1 到 32; 然而此项错误的来源不是由于数字的长度, 而是因为它

的大小.

 

 

-1348   尝试零除.

 

除数不得为 0. 在某些情况下会发生此错误, 因为除数是一个字符值, 无法转换

成数值.

 

 

-1349   字符转换至数值失败.

 

字符值正转换成数字型态, 以储存在数值的栏或变量中. 然而, 字符串无法解释

成一数值: 它包含除了空白, 数字, 正负号, 小数点, 或字母 e 的所有字符, 或

是数字各部分的次序错误, 使得数字无法解译.

 

 

-1350   不可能在指定的类型之间转换.

 

系统将会尝试任何合理的数据转换. 然而并不支持一些如 INTERVAL 转换到

DATE, 或 DATETIME 转换到 MONEY. 您可能参考到错误的变量或栏. 确定

您指定了希望的数据类型, 且数据值格式正确.

 

 

-1351   已定义函数 (或报表) '名称'. 函数和报表两者不能有相同的名称.

 

在程序中, 每一个函数 (或报表, 它与函数类似) 必须有唯一的名称. 必须变更

这次或上一次使用名称的其中一个.

 

 

-1352   '名称' 不能同时用做函数名称 (或报表名称) 和变量名称.

 

所显示的名称至少已用两种方式定义. 在广域层级或模块级 (函数名称, 报表

名称, 广域变量或模块变量名称) 必须是唯一的. 找出这个名称的所有定义, 除了

其中一个以外, 将其他的全部都更改.

 

 

-1353   使用 "!" 编辑 TEXT 和 BYTE 字段.

 

内建的画面表格编辑器不能处理 TEXT 或 BYTE 栏. 然而您可以指定外部程

式, 来显示或编辑 TEXT 或 BYTE 栏的值. 若要为任何字段呼叫外部程序, 请将

游标放在该字段上, 并按下惊叹号 (!) 键. 如果已定义了外部程序 (在画面表格规

格中使用 PROGRAM 属性), 将启动外部程序. 在 TEXT 字段中, 如果在此画

面表格没有定义外部程序, 将启动定义在 DBEDIT 环境变量中的程序.

 

 

-1355   无法建立暂时档.

 

在一个暂时档中, 使用 LOCATE 叙述找到了一个 BYTE 或 TEXT 变量. 现

有的叙述中指定了一个值给该变量, 因此 4GL 尝试建立暂存档, 但是发生了

错误. 可能是因为没有磁盘空间, 亦可能是因为您的账户没有访问权限来建立

暂存档. 4GL 于 DBTEMP 环境变量中所指定的目录建立暂存盘. 请查阅错误

讯息以得到更多信息. 检查 DBTEMP 之值, 从 5.01 版本之后, DBTEMP 环境

变量使用在 INFORMIX-SE 数据库服务器, 而不使用在 INFORMIX-OnLine

Dynamic Server.

 

 

-1356   写入暂时档 '文件名' 错误.

 

操作系统在输出至用来存放一个 Text 或 Byte 变量的暂时文件时, 传回了一个错

误信号. 可能磁盘已满或硬件故障. 请查阅系统讯息以得到更多的信息.

 

 

-1357   读取暂存档 '文件名' 错误.

 

操作系统从用来储存一个 Text 或 Byte 变量的暂时文件输入时, 传回了一个错误

信号. 可能磁盘已满或硬件故障. 请查阅系统讯息以得到更多的信息.

 

 

-1358   写入 blob 档案 '文件名' 错误.

 

操作系统在输出至用来存放一个 Text 或 Byte 变量的暂时文件时, 传回了一个错

误信号. 可能磁盘已满或硬件故障. 请查阅系统讯息以得到更多的信息.

 

 

-1359   读取 blob 档案 '文件名' 错误.

 

操作系统从用来储存一个 Text 或 Byte 变量的暂时文件输入时, 可能磁盘已满或

硬件故障. 请查阅系统讯息以得到更多的信息.

 

 

-1360   此字段没有 PROGRAM= 子句.

 

当游标在 TEXT 或 BYTE 字段的时候, 您按下惊叹号键 (!). 然而, 您并没有

为这个字段指定外部的程序 (使用画面表格规格档案里的 PROGRAM 属性). 如

果这是 TEXT 字段, 在启动程序之前您能藉由设定 DBEDIT 环境变量, 来指定

文本编辑器.

 

 

-1361   不合法的 blob 文件名. 不允许 Null 名称.

 

在档案中使用 4GL 叙述 LOCATE 找出 BYTE 或 TEXT 变量. 然而变数

中的文件名是 null 字符串. 既然档案不存在, 所以 4GL 不能对它做任何事.

 

 

-1371   字段 '域名' 不存在于现有的画面表格.

 

已经给定所指的域名给 NEXT FIELD 叙述或 pf_nxfield() 函数, 但是没有定义

在现有的画面表格. 通常发生的错误是附签名称错误, 其名称是用在

屏幕外观, 并出现在 ATTRIBUTES 区段中等号的左边, 而域名出现在

ATTRIBUTES 区段中等号的右边.

 

 

-1372   键入的数值太大, 不能放入十进制或 money 变数.

 

这个讯息可能不是由任何目前的 Informix 产品所传回的. 万一它出现, 参考错

误 -1226的解释. 如果错误再次发生, 请记录所有的情况, 并联络 Informix 技

术支持部门.

 

 

-1373   字段 '域名' 不在 CONSTRUCT/INPUT 叙述的字段列表中.

 

所示名称的字段已经呼叫内建函数 get_fldbuf() 或 field_touched(),

然而在这个 CONSTRUCT 或 INPUT 叙述中, 没有要求从这个字段输入. 结果,

函数无法传回任何有用的值. 请从叙述的开始处重新检视这些函数的使用,

并将它们与栏表列比较.

 

 

-1374   SQL 字符截断或交易警告.

 

设有 WHENEVER WARNING STOP 的程序发生了警告的状况. 如果有关

的叙述是 DATABASE 叙述, 则情况为刚开启的数据库使用了交易登录. 若为

其他的叙述, 则情况为必须截断从数据库而来的字符, 以符合其目的字段大小.

 

 

-1375   累积中发现 SQL NULL 值或 ANSI 模式数据库警告.

 

设有 WHENEVER WARNING STOP 的程序发生了警告的状况. 如果有关的叙

述是 DATABASE 叙述, 情况为刚开启符合 ANSI 标准的数据库. 在其他

的叙述中, 情况为计算累积值时使用了 null 值.

 

 

-1376   SQL INFORMIX-OnLine 或程序变量不相符的警告

 

设有 WHENEVER WARNING STOP 的程序发生了警告的状况. 如果相关的叙

述为 DATABASE 或 CREATE DATABASE 叙述, 则此情况为由 OnLine

数据库服务器开启数据库. 若为其他的叙述, 则表示 SELECT 叙述传回比程

式变数个数更多的值.

 

 

-1377   SQL 浮点到十进制转换警告.

 

设有 WHENEVER WARNING STOP 的程序发生了警告的状况. 这个情况是在

刚开启的数据库中, 数据库服务器将会使用 DECIMAL 数据类型做为 FLOAT 值.

 

 

-1378   SQL non-ANSI 扩充警告.

 

虽然目前的数据库是符合 ANSI 标准, 但所执行的数据库作业并不属于 ANSI

SQL, 这仅是提供信息的讯息.

 

 

-1379   可能无法直接呼叫报表函数. 请使用 OUTPUT TO REPORT 叙述.

 

报表函数被当成 CALL 叙述的结果输入. 报表函数只能使用 START REPORT,

FINISH REPORT, 和 OUTPUT TO REPORT 叙述来执行. 重新检视程序, 寻找

像正常函数般呼叫的报表函数名称并改变其名称. 如果您要使用报表函数里的一

些程序代码当做子程序, 请将它放置在分开的子程序, 并从报表函数和其他的地方

呼叫它.

 

 

-1381   除错时, 不能执行另外的 runner.

 

4GL runner 的 instance 正在执行中时, 除错时, 您不能透过 RUN 指令, RUN

快速按钮, 或直接从 Windows 来开始其他的 runner 事件. 若要开始一个新的

runner 事件, 请首先离开现在执行的 4GL 应用程序.

 

 

-1800   不合法的交易状态.

 

在您停止连接之前, 您必须确认或回复使用中的交易.

 

 

-1801   不支持多重服务器.

 

您正在单一交易里面尝试展开 (span) 重连接. 当交易在作业中的时候, 如果您

在建立连接时, 使用 WITH CONCURRENT TRANSACTION 子句, 可以在作业

交易中切换到不同的连接.

这个错误讯息可能发生在下列各项切换连接:

*       如果使用中的连接是连接到一个 6.0 或更高版本的数据库服务器, 而

        您在建立连接时没有指定 WITH CONCURRENT TRANSACTION 子句,

        同时在使用中的连接里有作业中的交易.

*       如果使用中的连接是连接到 5.0 版本的数据库服务器, 而您在建立连

        接时没有指定 WITH CONCURRENT TRANSACTION 子句, 且在这个

        连接上有开启的数据库.

 

 

-1802   连接名称正使用中.

 

已有相同连接名称的连接. 每个连接必须有唯一的连接名称. 请重新指名连接并

再试一次.

 

 

-1803   连接不存在.

 

在 SET CONNECTION 或 DISCONNECT 叙述中的连接名称未参考到已建立

的连接. 请检查您的程序连接是否已建立, 如果已建立, 请确定它没有停止连

接. 亦请检查失败的叙述中错误连接名称的拼法.

 

 

-1804   不合法的数据库环境.

 

数据库服务器不能连接到您指定的数据库环境. 服务器不能定位已指定的数据

库服务器或数据库. 请检查您的叙述语法. 若您要指定数据库服务器, 必须使用

@ 记号, 而不能够使用 /.

 

 

-1805   不合法的连接名称.

 

连接名称不合法, 必须使用符合其他标识符相同的规则. 也就是说, 它最多可达

18 个字符长, 且可包含字母, 数字, 和底线字符; 同样的, 它不能是一个 ANSI

保留字. 如果连接名称用在原有的 CONNECT TO 叙述, 您必须在接下来的连

接叙述使用该连接名称. 请确定连接名称是正确的标识符, 以及您正在使用的是

连接名称, 而不是其他的值.

 

 

-1807   没有可以停止连接的连接.

 

您正在尝试停止此刻不存在的连接. 请检查您的程序, 以确认您没有对这个连接

执行 DISCONNECT 叙述.

 

 

-1808   重新连接到服务器 '何服器名称' 以进行数据库作业.

 

如果使用 CONNECT 叙述连接到数据库服务器, 您不能透过其中一个

DATABASE 叙述 (DATABASE, START DATABASE 等), 来隐匿地重新连接

至服务器. 您必须用SET CONNECTION 叙述切换到此服务器.

 

 

-1809   服务器拒绝连接.

 

检查您的访问权限, 是否可连接到指定的服务器. 如果您同时指定数据库服务器

和数据库, 也请检查您是否有访问权限来存取数据库.

 

 

-1810   停止连接错误.

 

DISCONNECT ALL 叙述没有停止连接某个连接. 其中一项连接所连接的资

料库服务器可能已经结束. 如果不是这种情形, 就是软件内部的原因. 如果错误

再度发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-1811   在外显连接之后不允许隐匿连接.

 

一旦您用 CONNECT TO 叙述建立至数据库服务器的外显连接, 您就不能使用

其中一个 DATABASE 叙述, 隐匿地连接到其他的数据库服务器. 在明确连接

之后, 您必须使用 CONNECT TO 叙述, 来连接至其他的数据库服务器.

 

 

-1812   内部错误.

 

如果这个内部错误讯息问题一再发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-2013   输出画面表格档案 '文件名' 无法开启.

 

可能您的帐户在指定目录没有写入存取的权限, 也可能磁盘已满. 在某些系统中,

该问题可能与档案开启的数目限制有关. 请查阅操作系统讯息, 以得到更多信息.

 

 

-2014   操作系统指令列上的自变量数目不正确. 至少要有一个 (1) 自变量.

 

当从指令列执行画面表格编译程序的时候, 您必须指定 -d 选项或画面表格的名称.

 

 

-2015   在行 '行' , 字符 '栏' 的已开启批注中找到批注符号 {. 这可能由于

        关闭先前开启的批注失败, 先前开启的批注是从行 '行', 字符 '栏' 开始.

 

不支援巢状的批注. 重新检视画面表格规格, 检查所有的批注. 检查每个开启大

括号有匹配的关闭大括号.

 

 

-2016   批注已开启, 但是没有关闭. 最后一个开启的批注是从行 '行', 字

        元 '栏' 开始.

 

在报表规格中的适当地方插入关闭-批注符号.

 

 

-2017   字符数据值没有正确转换为字段型态.

 

您已将字符值 (被引号括起来的字符串) 键入在不同的数据类型的字段 (例如

INTEGER). 然而, 您键入的字符无法转换成此字段型态. 请查看此应用程

式的操作指令, 然后再重新键入数据.

 

 

-2018   在行 '行' , 字符 '栏' 发生文法错误. 无法理解其上下文结构.

 

这个讯息指出从来源档案中的某一点之后, 编译程序已无法了解输入. 发生错误

的确实位置或许比较前面, 可能在数行之前; 但不会发生在指出的点之后. 另外,

应该会出现更明确的错误讯息.

 

 

-2019   此整数超出允许的最大值.

 

INTEGER 数据类型接受的数值, 为绝对值在 0 和 2,147,483,647 (231-1) 之间

的值. 如果您必须储存这个范围以外的数字, 请重新定义该栏或变量类型为

DECIMAL 数据类型. (-2,147,483,648 这个值是一个 32-bit 的值, 但它不是可接

受的值而是在 4GL 中用于代表 null 值.)

 

 

-2020   表格 '表格名称' 可能无法开启. 操作系统会要求开启表格以供写入.

 

您正在使用的数据库服务器管理表格的方式就像是管理一般的磁盘档案. 在资

料库服务器之内现有的数据库被当作是目录来管理, 而表格则是其内的档案.

如果查看操作系统的错误讯息, 可得到更多的数据. 请定位数据库目录

(可以是在现有的目录下, 或者是把路径指名在 DBPATH 的环境变量中,

并检查磁盘有足够的可用空间. 在 UNIX 系统里, 您的个人帐户不必在目录下

和表格档案作写入的动作. 但无论如何这些都必须要让群组 id informix 有写入

的权限.

 

 

-2021   指定的色彩不合法. 色彩 0 到色彩 7 分别指白色, 黄色, 紫红色,

        红色, 青蓝色, 绿色, 蓝色, 黑色.

 

无论在画面表格规格的 COLOR 属性中或在 4GL 程序的显示属性中, 您必须

由讯息内所显示的名称来指定色彩. 请检查叙述内的拼法和标点符号.

 

 

-2022   此标识符长度超越标识符长度最大值, 其值为 '长度' .

 

所有的字段和其他标识符名称长度, 一定不能比所显示的长度还要长. 您必须修

正画面表格规格, 然后重新编译.

 

 

-2023   引号内字长度过引号内字符串的最大长度, 其值为 '长度' .

 

不能使用较长的引号内字符串. 在一个画面表格中, 没有方法使较短的字符串联结成

一个较长的字符串, 所以这是一个绝对长度极限. 您必须修正这个画面表格, 然后

重新编译.

 

 

-2024   有一个已经被指定的记录 '名称' . 假如记录名称与在画面表格中的表

        格名称相同, 那么已建立一个具有相同名称的默认记录.

 

确认每一个屏幕记录和屏幕数组的 '记录-名称' , 在画面表格规格中皆是唯一的.

每一个用来在 ATTRIBUTES 区段中定义一个字段的表格, 皆会有自动定义的

屏幕记录.  因此假如您要定义的记录具有表格名称, 会视为重复.

 

 

-2025   即使没有开启批注, 批注的终止符号 (}) 依然发现在行 '行' , 字符'栏' .

 

除非用引号围住批注, 否则批注符号必须是成对的. 有可能在编辑时, 无意中把

开启批注符号删除. 请变更画面表格规格, 使得批注能做适当的分界.

 

 

-2026   FORMONLY 字段 '域名' 并没有一指定的类型. 假如包含已指定

        的列表或默认值,则必须指定类型.

 

通常定义 form-only 字段 (不能联结到数据库的栏) 的方法如下:

tagname = DISPLAYONLY.fieldname TYPE datatype

TYPE 子句是需要的. 请重新检查属性叙述并重新编译这个画面表格. (关键词

FORMONLY 使用在以 4GL 编译程序编译的画面表格. 它和 DISPLAYONLY 的

意思相同.)

 

 

-2027   在行 '行' , 字符 '栏' 发现一不合法的(隐形的, 控制)字符.

        此字符在列出时会置换成空白, 但仍然存在原始(输入)表格,

        应该在尝试重作编译之前移除此字符.

 

不合法字符发生的时机是, 当文字处理编辑器使用文件模式而非文本模式时,

在编辑档案时按了不可印出键, 或是数据有损毁.

 

 

-2028   在画面表格中, 符号 '名称' 不能用在画面表格前缀. 符号不能在这里

        选择记录的要素.

 

在一个 SCREEN RECORD 叙述, 任一组件必须用像是定义在  TABLES 区段,

或用 FORMONLY 的表格名称来介绍. 请重新检视在 TABLES 区段中的指示

名称的拼法, 及检查其他叙述的标点符号.

 

 

-2029   屏幕记录数组 '名称' 组件大小不同于数组指定维数或者是本身之间不同.

 

屏幕数组的维数是跟随在名称后写在中括号内, 如下面例子的维数是 12 .

SCREEN RECORD details [12]

         (items. item_num, items.item_desc, items. unit_price)

在这种情形下, 12 个屏幕字段应该与在屏幕记录中的每一组三个字段之一相

关联.  这个错误讯息在当一个或更多的栏显示不同次数时会产生.

 

 

-2030   在行 '行' , 字符 '栏' 发现打字上的错误.

 

在所指出位置的一个单一字符, 纵使可打印, 也是预料外的且不合画面表格规格

语法.

 

 

-2031   WORDWRAP 属性仅能指定为 CHAR,VARCHAR,TEXT 字段.

 

PRINT 叙述应用在 WORDWRAP 函数的值不是字符数据. 请检查已指名的栏

位是否为您所想的, 并检查其他叙述的标点符号.

 

 

-2032   上述数值无法成功转换为 INTEGER 或 DOUBLE 或 LONG 其中之一.

 

数值常数有些错误: 或许有太多位数. 请检查叙述的标点; 有可能两数值已一

起执行.

 

 

-2033   字段 '名称' 有不包含在列表范围内值的默认值.

 

所指出字段有 DEFAULT 属性和 INCLUDE 属性, 但两者并不符合: 默认值

不是其中之一允许的值. 请修改其中一个属性, 并且重新编译画面表格规格.

 

 

-2034   此特性对 INFORMIX SQL 来说是没有用的. 但是对一个使用

        "form4gl" 画面表格建立器的 INFORMIX 4GL 却是有用的.

 

PERFORM 画面表格编译程序和 4GL 画面表格编译程序, 可接受非常类似的画面

表格规格, 但是它们有些特性却不同. 这个叙述使用 4GL 特性, 但是

PERFORM 是无法处理的.

 

 

-2035   若指定 WORDWRAP 属性, 则应该适用于联结中全部的栏.

 

忽略此讯息. 这点适用于 PERFORM (JOINS), 而 4GL 不能支援.

 

 

-2036   多行字段的显示行存在于不同的屏幕分页.

 

一个多行字段(有相同附笺的多重字段, 具有 WORDWRAP 的属性)必须完全

在同一屏幕分页里. 可能您不想使得字段占用两个分页. 假使您的分页外观, 加

上四个预留行, 高过实际屏幕(如同指定在 SCREEN 叙述中或在命令行上 line

的维度中), 则此画面表格会在可放入页的最后一行后分割成二, 而在新的一页

出现, 并且此情况可能会意外的拆开多行的字段. 在任一情况下, 重新执行编排

字段, 使多行字段都在单一的分页上.

 

 

-2037   PROGRAM 属性仅可以指定给 BYTE 和 TEXT 字段.

 

字段属性 PROGRAM 指定外部程序来编辑或显示一个 BYTE 或 TEXT 值;这

些值太大, 并且是专门为普通画面表格的显示方法. 然而在这个叙述中, 属性应

用在未支持的另一类型栏. 请检查表格和栏名称, 以确认它们是您所想的, 并验

证在 DATA BASE 叙述中指名的数据库中表格的现有定义.

 

 

-2038   BLOB 字段无法联结.

 

BYTE 和 TEXT 类型的栏不能拿来比较;因此不能用于联结表格;因此不能

指名为联结栏, 或指名在 COMPOSITES 叙述中. 请检查表格和栏的名称, 以

确认它们是您所想要的, 并验证在 DATA BASE 叙述中指名的数据库中表格的

现有定义.

 

 

-2039   AUTONEXT,DEFAULT,INCLUDE,VERIFY,RIGHT 和 ZEROFILL 属

        性都没有支持 BLOB 字段.

 

BYTE 和 TEXT 类型的栏不能以这些属性所指的方式使用. 请检查表格和栏的

名称, 以确认是您所要的, 并验证在 DATABASE 叙述中指名的数据库中表格

的现有定义.

 

 

-2040   画面表格名称 '名称' 超过字符的最大长度 '长度' .

 

画面表格编译程序对名称的限制可能比主机操作系统还短. 您必须替此画面表

格规格档案更名, 然后再次发出命令.

 

 

-2041   画面表格 '文件名' 不能开启. 可能是因为画面表格档案不存在, 或

        者是使用者没有读取权限.

 

检查 '文件名' 的拼法. 然后, 检查画面表格文件是否存在于现有的目录下; 若

在其他目录下时, 请检查有没有提供正确的路径名. 在 UNIX 系统下, 如果这些

事情都没有错, 请验证您的账户在这个档的读取权限.

 

 

-2042   在现在或之前的叙述内使用的 BLOB 字段不正确.

 

BYTE 和 TEXT 类型的栏, 无法以这个叙述所指的方式使用. 请检查这表格和

栏的名称, 以确认它们是您所想要的, 并验证在 DATABASE 叙述中指名的资

料库中表格的现有定义.

 

 

-2043   屏幕外观超过指定的屏幕宽度. 这只是个警告.

 

所定的屏幕宽度是来自 SCREEN 叙述或是画面表格编译程序的一命令行参数,

其默认值是 8O 个字符. 假使现有画面表格规格显示在终端机上, 将有一些行

截断或无声无息地卷动".

 

 

-2044   每一个条件最多只能有一种色彩属性指定给每个字段.

 

请重新检视这个 ATTRIBUTES 叙述 : 在 COLOR 属性旁有一问题. 请寻找遗失

的标点.

 

 

-2045   4GL 字段的条件属性无法视其他字段的值而定.

 

在 COLOR 属性的WHERE 子句中之布尔表达式, 仅能使用域名和常数.

修正这个属性并重新编译画面表格.

 

 

-2100   字段 '字段' 有验证字符串错误, String = string.

 

储存于 syscolval 或 syscol 的格式化验证字符串不正确. 字符串如应用于

字段所示, 在 Windows 下可使用 column Attributes Dictionary 公用程序.

在 DOS 和 Unix 下可使用 upscol 公用程序, 来更新此字符串.

 

 

-2800   规格的第一行必须是跟随着数据库名称的数据库关键词, 或

        FORMONLY 关键词 (只有4GL). 选择性的 WITHOUT NULL

        INPUT 也能跟随在后.

 

在批注行之外, 画面表格规格必须由指名一数据库开始.  重新检视档案的标点

和拼法的错误. 请参考此产品的参考手册, 以得到在 DATABASE 叙述中所允

许的选项. 叙述的参考手册. (目前不使用这讯息. 4.0 版或更早的产品可能会遇上

此错误.)

 

 

-2810   名称 '名称' 不是存在的数据库名称.

 

出现在画面表格规格开头的 DATABASE 叙述内的名称, 并不是找得到的数据

库. 除非您使用 OnLine, 否则这个数据库必须存在于现有的目录下, 或在由

DBPATH 环境变量中指名的目录.

 

 

-2811   暂时表格 '表格名称' 无法开启写入.

 

应用程序尝试在数据库或一些其他暂时档案内建立暂时表格, 然而数据库伺服

器收到错误码. 最有可能的原因是磁盘空间不足. 请找出包含操作系统讯息的其

他错误讯息, 可提供更多数据.

 

 

-2812   暂时表格 '表格名称' 无法读取.

 

应用程序建立和填满数据库的暂存表格或一些其他暂时档案. 但是当试着去读

取列时, 却从数据库服务器接到错误讯息. 最有可能的原因是硬件错误. 请找出

包含操作系统讯息的其他错误讯息, 可提供更多的信息.

 

 

-2820   在中括号之间的卷标名称不正确或是卷标遗失.

 

在画面表格规格的屏幕区段这一行中, 有一个字段以中括号指示. 然而应该有一

个简单名称写在中括号内, 但却没有. 除了空白或者是不正确的名称外没有东西.

请再检视行的标点, 以确认在两个中括号之间仅有单一的标识符.

 

 

-2830   左中括号出现在此行, 但没有右中括号匹配.

 

一屏幕字段不能展开成数行. 请再检视 SCREEN 区段, 以确认所有字段正确

地标示. 若要建立多行字段, 请使用相同的字段附签, 清楚隔开所有多重完整字段.

 

 

-2831   控制区块超过最大字段 '极限' .

 

有太多的行或表格列在此控制区块的 OF 子句中. 您必需对清单的每一部分

撰写分别的隔控制区块.

 

 

-2832   画面表格使用 "|" 来开始和结束字段置放. 因为如此画面表格必须指定

        相同字符做为的左边和右边分界符号. 以 INSTRUCTIONS 区段内的

        DELIMITERS 命令完成.

 

请确认有一 DELIMITERS 叙述, 并且左边和右边的分界符号指定相同的字符.

 

 

-2834   NULL 不能用于预设. 若您没有指定, 它就即为预设.

 

ATTRIBUTES 叙述包含一指定 NULL 的 DEFAULT 子句. 不是删除这个子句

就是指定其他值.

 

 

-2840   在画面表格中, 没有定义此标签 '附签' .

 

所指名称出现在  ATTRIBUTES  叙述左边, 但是并不出现在 SCREEN 区段

的中括号内. 请重新检视己定义的字段附签, 以了解省略的原因.

 

 

-2841   画面表格必须在属性区段之前包含表格宣告.

 

请再重新检视画面表格规格档案, 以确认内含依序的 DATABASE 叙述,

SCREEN 区段, TABLES 区段, 和 ATTRIBUTES 区段.

 

 

-2843   字段 '域名' 没有出现在画面表格规格中.

 

在 ATTRIBUTES 叙述内的名称, 应已在画面表格规格中预先定义. 请再重新

检视在叙述中所有名称的拼法, 且确认它们定义正确.

 

 

-2844   字段 '域名' 与画面表格规格中一个以上的字段有关连.

 

任何一表格栏可能和 ATTRIBUTES 叙述的其一字段有相关, 这有可能是您试

着从有相同的行名称的二个或更多的表格中显示栏. 这种情形下, 请用表格名称

做为栏名称的前缀来区别.

 

 

-2845   提供给包含栏 '栏' 的表格 '表格名称' 的合成栏没有定义为索引栏.

        在此栏上建立索引将会使执行效能增进很多.

 

索引的出现可以减少很多联结表格的时间. 然而索引不是绝对必要的, 特别是当

表格很小的时候或是在初始测试期间.

 

 

-2846   字段 '域名' 不是表格 '表格名称' 的成员.

 

此述叙中指出显示的名称是表格的一部分, 但是在现有的数据库却不是如此. 请

再检查这两个名称的拼法. 若是您所要的, 请确认正在使用的数据库是正确的,

并且表格没有更改.

 

 

-2850   在数据库里的名称 '名称' 不是栏名称.

 

在画面表格内的 TABLES 区段中指定的表格是存在的, 但是指名在

ATTRIBUTES 区段的栏 '名称' 不存在.  请对照真正的表格来检查名称拼法. 表

格可能已经更改或是栏已更名. 您可以使用 INFORMIX-SQL 在Tables 选单的

Info 选取中, 检查栏名称.

 

 

-2856   TODAY 属性只可以设定给日期栏.

 

TODAY 函数 ( 非属性 ) 传回的值是今天的日期. 这个值只能设定在是

DATE 或 DATETIME 数据类型的字段. 在这个叙述中的字段有不同的类型.

4GL 程序提供自动数据转换, 但在画面表格的上下文则不行.

 

 

-2857   联结清单中只能有一最紧要的合成栏.

 

这个叙述定义一个联结清单. 有两个或更多的栏名称序列与相同的画面表格栏

位有关系. 在这样的清单里, 栏名称前的星号指示此栏在查验联结中是最紧要的

栏. 在任何的联结中只能允许有一个这样的栏, 但是在这清单中有两个或更多这

样的栏.请重新检视联结的说明文件和选择单一最紧要的表格.

 

 

-2858   表格 '表格 1' 联结至表格 '表格2' , 但是联结栏不属于合成键.

 

在两个的表格之间, 您已经定义了两个或更多不同的联结栏. 然而, 在联结栏中

没有合成的索引. 需要这样的索引是为了确定合成键存在, 也就是任一个从来自

联结栏的合成值都将只出现一次. 请重新检视用于定义两个表格的联结栏的

ATTRIBUTES 叙述.  请确定它们都是如您所要的; 例如确定您打算在两个或更

多的栏上联结两个表格, 而不在每一个栏联结三个或更多表格. 若您想要合成键,

那么至少在 '表格 1' 的栏上使用 CREATE INDEX 命令, 以建立一个合成的

唯一索引.

 

 

-2859   字段 '域名' 是多个表格的成员 -- 您必须指定表格名称.

 

在 TABLES 区段指名的两个或更多表格中有所显示名称的栏. 您必须确定所指

的表格. 其方式是以表格名称做为栏名称的前缀, 例如 '表格.栏' . 请在画面表

格规格的地方如此做.

 

 

-2860   对 '字段-名称' 的栏/值类型不相符.

 

这个叙述指定以 DEFAULT 子句指定值给此字段, 或以 INCLUDE 子句使用

其值, 所用的数据与字段的数据类型不合. 请再检视字段中数据类型 (来自有关

的栏) 和确定仅容指定数据类型相容的值.

 

 

-2861   您已超过了最大的表格数目.

 

每一次可以使用的表格数目有极限. (这极限可能在不同的主机系统或用不同的

数据库服务器时, 会有所不同.) 您将必须减少使用在此画面表格的表格数目.

 

 

-2862   表格 '表格名称' 在数据库中找不到.

 

在画面表格编译的时候, 所有使用在画面表格中的表格必须存在, 以使编译程序

可以查验栏的数据类型. 所示的表格不存在于画面表格内指名的数据库中. 请检

查表格名称和数据库名称的拼法. 若都是如您所要的, 不是您没有使用所预期的

数据库版本 (检查 DPBATH 环境变量值), 就是数据库已更改.

 

 

-2863   字段 '域名' 不存在于指定的表格中.

 

指定在画面表格的 TABLES 区段中的表格确实存在, 但是在  ATTRIBUTES

区段指名的 '域名' 则不存在, 请对照实际表格来检查名称的拼法. 表格可

能已变更或是字段的名称已更改. 您可以在 INFORMIX-SQL 表格选单的 Info

选取中检查栏名称.

 

 

-2864   表格 '表格名称' 不在指定的表格中.

 

所指示的表格是在叙述中使用, 但未在画面表格规格中的 TABLES 区段定义,

请检查其拼法, 若如您所要的, 则将此表格加入 TABLES 区段中.

 

 

-2865   字段  '域名' 在表格 ' 表格名称 ' 中不存在.

 

叙述中的某部份指出显示栏为表格的一部分 ( 最可能是叙述参考到 '表格名称.

字段' ), 然而, 它在表格中并无定义. 请检查两个名称的拼法, 如果是您所需要

的, 则检查数据库的内容, 可能是表格已变更或字段已更名.

 

 

-2866   NOW 属性只可设给 datetime 字段.

 

这讯息不为现有产品使用. SQL 不支持 NOW 属性和函数, 请使用 CURRENT

函数.

 

 

-2867   CURRENT 属性只可设给 datetime 字段.

 

CURRENT 函数 ( 非属性 ) 如同 DATETIME 值会产生现有的日期和时间, 

叙述参照到字段然而其数据型态并非 DATETIME, 且在此内容中不支持自动资

料转换. 请检查这段叙述, 以确定是参考您所需要的字段, 并修改画面表格,使得

DATETIME 的值只设给DATETIME 字段.

 

 

-2870   标注下标栏的尺寸和显示字段配置的空间不符.

 

这属性的叙述和显示字段的栏之子字符串有关. 然而, 不是子字符串的数字是错的

(第一个数字小于 1 或大于字段的尺寸, 或第二个数字小于第一个), 或者是

数字是正确的, 但它们所选定字符的数目和显示字段的尺寸不同. 请更改子字

串的数字, 使其设定和字符所需的字段大小相符.

 

 

-2880   遗漏 'screen' 或 'end'.

 

每一个画面表格的规格必须用关键词 END 结束, 也必须包含关键词 SCREEN.

两者必须在每一行的第一字段开始. 请重新检视画面表格规格的内容, 并确定所

有必须的区段皆已正确标注.

 

 

-2890   屏幕的定义必须由左大括号 '{' 开始.

 

每个屏幕的外观必用大括号包住. 开头的大括号必须是该行的第一字符. 请重

新检视画面表格的规格, 并确定屏幕的外观正确的标点.

 

 

-2892   '域名' 字段的名称重复出现. 如您想要让这字段在画面表格中

        重复出现, 请使用相同显示字段的卷标.

 

想要在两个或更多地方显示相同栏的方法, 是在屏幕外观上放置两个或更多的

字段, 而每个字段有相同的附签名称. 然后在 ATTRIBUTES  区段放入一个叙述,

使附签名称和字段名相关联. 现有字段的值会在所有字段重复. 如您想要显示不

同字段, 在 ATTRIBUTES 区段所列的栏名称必须不同. 如您想显示有相同字段

名称的不同字段, 请加上表格的名称做其前缀.

 

 

-2893   显示字段 '附签名称' 的卷标在画面表格中重复出现, 但其长度却不相同.

 

您可能在屏幕外观上多次放上同一字段 ( 但都显示同一栏 ), 但所有拷贝的长

度必须相同. 请重新检查 SCREEN 区段, 如您想在同一字段上有多重拷贝, 确

定所有的拷贝是相同的.

 

 

-2895   显示字段长度 '字段大小' 和数据库栏 '栏大小' 的长度不符, 这只是

        警告.

 

在此叙述中所定义的字符字段的尺寸 ( 如在 SCREEN 区段所显示 ) 和关连栏

位的尺寸不符. 您可以给画面表格编译程序指定 -v 选项, 以得到这种型态的警告.

 

 

-2901   字段 '名称' 包含两个冲突属性, first 和 second.

 

这叙述自相矛盾. UPSHIFT 和 DOWNSHIFT 属性不能同时提供给相同的栏

位; 是 NOENTRY 和 REQUIRED 或 NOENTRY 和 VERIFY 亦不能. 请重新

检视叙述并更正属性.

 

 

-2920   '栏' 的栏是一最紧要的栏, 但其尚未标记索引过. 在此栏建立索

        引可以使效率提高.

 

您已在验证连结中定义所指的栏为最紧要的栏, 也就是说当操作员在字段中输

入值时, 将会在此栏中寻找所输入的值. 当索引存在时, 这样的寻找动作是很快

捷的. 但此时栏中却无索引. 如无索引则寻找的动作变得非常的慢, 除非字段不

许操作员输入 ( 在这种状况下您必须将星号移除 ) 或是表格非常的小 (最多只

有几十行的列 ), 否则您应该在使用画面表格之前, 为这栏建立一索引.

 

 

-2921   数据库的 dbname 和现有版本的 INFORMIX-SQL 不合.

 

这画面表格里的 DATABASE 叙述中所指名的数据库, 是在先前版本的

Informix 软件所建立的. 在现有系统使用之前, 请用 sqlconv 公用程序转换.

 

 

-2930   部分的字段 '名称' 在屏幕上的显示超过一次.

 

这画面表格显示所指的字段标注下目标部分在不同的字段中, 而这是允许的.

然而任何单一字符出现的字段不得超过一个, 也就是说下标不得重迭. 例如您可

以在一字段上显示 name[25, 49], 在另一字段上显示 name[50, 74], 但是您不能

显示 name[25,49] 和 name[25,74], 因为有些字符出现两次.

 

 

-2931   在格式规格中有错误.

 

请检查这叙述中 FORMAT 字符串的内容. 其数据型态不正确; 也就是说, 在数值

栏中有不是 # 和 . 的字符以及在 DATE 的栏中有不正确的内部长度, 例如

yyy 三位数的年份.

 

 

-2932   只能为指定浮点数, smallfloat, 十进制数, 日期字段给格式.

 

这句属性叙述指定一 FORMAT 字符串, 但字段中的数据型态并不是四种支持的

格式 : FLOAT, SMALLFLOAT, DECIMAL ( 或 MONEY), 和 DATE中 的一种. 如

果不是 DISPLAYONLY 栏, 请确定其和正确的栏有关连, 而且确定此栏已定

义在您所需要的数据库中.

 

 

-2933   格式的宽度比配置的显示宽度大.

 

此字段所指定的 FORMAT 字符串的长度大于在 SCREEN 区段中字段本身的长度.

请重新检视屏幕的外观并与以修改, 或者更改格式, 使其两者相等.

 

 

-2934   格式的宽度比配置的显示宽度小.

 

此字段所指定的 FORMAT 字符串的长度小于在 SCREEN 区段中字段本身的长度.

请重新检视屏幕的外观并与以修改, 或者更改格式, 使其两者相等.

 

 

-2935   用 -l 选项所选取的行数, 以及在屏幕区段内的行数, 必须为介于 6

        至 600 间的正整数

 

在 SCREEN 叙述中所给定的, 或在 -l (小写 L) 命令行选项所给定的屏幕的垂

直尺寸, 已超过范围. 请更改为画面表格所要使用终端机屏幕的大小.

 

 

-2936   用 -c 选项所选取的栏数或在屏幕区段内的栏数, 必须为介于 300

        至 600间的正整数.

 

在 SCREEN 叙述中所给定的, 或在 -c 命令行选项所给定的屏幕的水平尺寸,

已超过范围. 请更改其尺寸, 以配合画面表格所要使用终端机屏幕的大小.

 

 

-2940   这栏的 '名称' 同时显示出有和没有下标.

 

此画面表格显示指定的字段, 而且替字段的一部分标注下标.  您可以在不同栏

位显示字段不同的下标部分, 但是这些部分不能重迭. 也就是说栏的同一部分

不能在屏幕上重复显示两次. 重新检视指定栏的所有用法, 可能您并不想在两

个地方使用到它. 或者他们有至少两个或以上具有相同名称的字段在不同的表

格中. 则您需要用表格名称来区分它们. 否则请在每个字段的栏上, 使用未重迭

的下标.

 

 

-2941   此 '名称' 不是画面表格上所显示的域名.

 

此叙述中参考一字段的 '名称', 但是这名称却还没定义. 请检查拼法并重新

检视 ATTRIBUTES 区段, 以了解这字段是如何定义.

 

 

-2943   您已经超过虚拟机的能力.

 

这叙述的表达式太复杂了, 以至于无法处理. 简化之并且重新编译该画面表格.

(请同时查看第 -2988 错误讯息)

 

 

-2944   您只可以在表格中, 而不能在字段中应用下列加入, 更新, 查询, 删除

        的命令.

 

所有 Add, Update, Remove, Query 等作业可以应用在整个的列上. 因此在开启

命令的控制区块, 只能列出表格的名称, 而非个别栏的名称. 请检查叙述中的名称,

并将栏的名称改变为其表格的名称.

 

 

-2945   您只可以在表格中, 而不是在栏中应用下列加入, 更新, 查询, 删除的命令.

 

累积 (AVG, MIN, MAX, COUNT, TOTAL) 只能在和表格有关的字段中执行, (但

不能是 DISPLAYONLY 字段 ), 但是这些表格必须列在相同控制区块的开始指

令中. 请修改画面表格规格并且重新编译.

 

 

-2946   您无法计算纯显示字段 '名称' 的累积.

 

累积只可以在和表格有关的字段中执行 (不能在 DISPLAYONLY 字段 ), 而这

些表格必须列在相同控制区块的开启命令中. 修改画面表格的规格并重新编译.

 

 

-2950   此栏 '名称' 没有一个在以 1 为开始的区段. 记得第一个下标是 1

        不是 0.

 

从相同栏来的多个子字符串设定给显示字段. 但是这些子字符串并没有涵盖, 此

栏的连续非重迭部分. 可能没有第一个区段 ( 从第一个字段开始 ) , 或是区

段和其他重迭. 请重新检查所指定的子字符串. 考虑使用多行的编辑字段来代替

一群子字符串; 使程序代码较简单并对输入数据提供较好的编辑方式.

 

 

-2951   左右分界符号必须定义在两个字符之字符串中.

 

DELIMITERS 的指令需要刚好两个字符的字符串, 即显示字段时使用的左边和右

边的分界符号字符. 这些字符可以相同, 但必须有两个.

 

 

-2952   为了要使用格式, 格式的长度必须和显示字段的长度相同.

 

以 PICTURE 属性指定的字符串的长度, 必须完全和在 SCREEN 区段所描述的

字段相同. 请重新检视这个字段的定义, 并且使两者长度相同.

 

 

-2953   '名称' 的名称不是画面表格中数据库的字段.

 

所有在 COMPOSITES 清单所列的字段, 必须定义在 ATTRIBUTES 区段中.

检查所有名称的拼法, 并确定他们已定义.

 

 

-2954   您已超越控制指令 '数目' 的最大值.

 

画面表格的 INSTRUCTIONS 区段, 已超越画面表格编译程序处理的能力. 您

必须删除一些命令以简化画面表格,.

 

 

-2955   在这画面表格中 '字段附签' 的名称不是显示在画面的字段.

 

这名称只出现在 ATTRIBUTES  区段, 但是不出现在 SCREEN 区段中.  请检

查名称的拼法; 可能其中有一个的地方是错的, 或其必须从屏幕外观中省略.

 

 

-2956   您不能设定显示字段 '字段-附签' 为一个值, 因为没有任何与其有关连

        的数据库字段, 同属于相同的表格 '表格' , 且它也不是一个纯显示变量

        的字段.

 

您不得在 LET 的叙述中跨越表格指配值. 所有与在 LET 叙述中的字段附签有

关的字段, 必须属于控制区块的开启指令所指名的表格, 或是它必须是一个纯显

示的字段.

 

 

-2957   您不能设定下一个字段给 that-tag , 因为没有一个和它有关连的资料

        库字段与 this-tag 属于相同的表格.

 

在 NEXTFIELD 叙述中指名的字段, 必须如同现有的字段与相同的表格有所关连.

请重新检视栏和画面表格中表格的关系, 并且尝试修改.

 

 

-2958   在 C 语言的函数中最多只能有十个参数.

 

这个 C 语言外部函数的呼叫是不适当的, 因为有太多的参数. 您必须寻找其他

方法, 以更少的参数传递相同的信息.

 

 

-2959   两个表格包含所有合成字段的组件, 可用字段配对的最大 '极限值' 联结,

 

与连结有关的字段数目有极限. 包含在 ATTRIBUTES 叙述和

COMPOSITES 叙述中, 为相同表格指名的链接栏.

 

 

-2970   这字段 '名称' 和其他字段连结, 但是它尚未被索引. 建议对栏作索引,

        以做为跨表格的查询. 建立索引可增进效率.

 

链接栏中若有至少一个是索引的话, 可以使链接作业变得更快. 然而对一或两

个非常小的表格 (只有数十列 ) 就不须要做索引. 请考虑在把画面表格正式上

线前, 在链接栏上建立索引.

 

 

-2971   这个栏不是字符栏, 所以它不可以被标注下标.

 

此叙述在栏名称后包含下标, 下标是以中括号括住的数字. 然而这个字段的数据

型态不是 CHAR , VARCHAR, 或 TEXT. 只有在这些类型栏才能被标注下标.

检查您是否指名正确的字段, 若真的有, 再检查其在数据库的定义.

 

 

-2972   这个字段不能向右对齐或以零填满, 因为它的显示宽度无法和真实字段

        的宽度相配合.

 

若要使用 RIGHT 和 ZEROFILL 的属性, 您必须确定字段的大小 (见 SCREEN

区段中的叙述) 必须和数据库栏的大小完全相同. 请重新检视此叙述, 屏幕外观,

以及数据库表格的定义, 以确定这些尺寸相符合.

 

 

-2973   只能在显示字段的描述中有一个最紧要的字段.

 

此叙述定义一链接列表, 此列表显示与相同的画面表格字段相关的二个或多个

域名. 在此种清单中, 域名前面的星号指出此栏是验证连结中最紧要的

栏. 任何连结中只能有一个最紧要的栏. 但是此清单中却有许多最紧要的栏. 请

重新检视验证连结的参考手册, 并只选取单一最主要的表格.

 

 

-2975   没有使用显示 '附签-名称' 的字段标签.

 

所指的名称已在 SCREEN 区段中定义, 但尚未在 ATTRIBUTES 区段中定义.

请重新检视每个区段中的附签, 并且修改画面表格, 使每个附签都定义.

 

 

-2976   太早到达画面表格的结尾.

 

画面表格的规格中有 SCREEN 区段, 但是却没有 TABLES 或 ATTRIBUTES

区段. 请完成画面表格规格.

 

 

-2977   表格 'table 1' 不能变成表格 'table 2'  的主要表格, 因为两者未

        连结.

 

在 MASTER OF 指令中指名的两个表格必须链接. 表格间的链接, 必须用在

ATTRIBUTES 区段叙述的两个表格所指名的栏来表示, 请检查此处表格名称的

拼法, 并重新检视属性叙述.

 

 

-2978   因为字段 'column 1' 和 字段 'column 2' 两者字段的型态或是长度

        不同, 所以没办法连结.

 

在连结定义中所有的栏, 必须来自相同的领域. 事实上这些栏有不同的类型或 (

如果他们是字符字段) 不同的长度指出它们的内容不是从相同的领域来的. 检

查域名的拼法以确定您对于字段的名称是正确的. 请重新检视数据库设计,

并确定这些表格要用这些字段做连结.

 

 

-2984   重复定义表格标识符 '表格' .

 

更正 TABLE 区段的叙述使每个表格只定义一次. 有可能是您已经定义一个

和真实表格名称相同的别名.

 

 

-2985   表格的标识符 'name1'  和 'name2'  代表相同的表格.

 

在 TABLE 区段中这两个名称参照到相同的数据库表格, 它们其中一或二个是

表格别名. 请更改叙述, 使每个名称只代表一个表格, 且每个表格只有一个名称.

 

 

-2986   画面表格的规格超过主要/明细配对的最大 '限制' .

 

支持一个画面表格的主要明细配对数目有限制. 您必须找出简化画面表格的方法.

 

 

-2987   画面表格的规格超过屏幕的最大 '限制' .

 

可用来支持画面表格的屏幕外观的数目有限制. 您必须找出简化画面表格的方法.

 

 

-2988   FORMBUILD 用完了内存.

 

画面表格编译程序无法得到足够的内存, 来处理画面表格的规格. 您必须找出

简化画面表格的方法.

 

 

-2989   字段 '名称' 是个参考栏, 但它不是索引. 推荐使用参考栏做索引来寻

        找资料. 建立索引可以提高不少效率.

 

您使用 LOOKUP 属性来定义所指的字段当作参考字段. 每当操作者

在字段输入值时, 它会在这个字段中寻找. 当索引存在时这个寻找的动作是非常

快的. 现在字段并没有索引, 如果没有索引寻找的动作会变成极端的慢. 除非

这个字段不允许操作者输入 (在这种状况之下您必须将星号删除) 或是这个表

格非常的小 (最多只有少数几十列), 您必需在使用画面表格之前必先为此栏

位建立一索引.

 

 

-2990   字段 'column1' 和 'column2' 不在相同的数据库表格中.

 

所有在单一 LOOKUP 属性中列举的字段必须属于相同的表格. 请检查名称的

拼法并且确定它们都是您所需要的字段.

 

 

-2991   警告: 在您的多重屏幕画面表格中只有第一个屏幕能在 4GL 的环境下

        显示.

 

当您用 4GL 的表格编译程序编译多重分页 PERFORM 屏幕就会显示此错误讯

息. 一个 4GL 程序只可以显示多个分页画面表格中的第一分页. 如果画面表格

的规格有超过一个 SCREEN 区段, 它就会刻意的分成多页, 而且须为 4GL

重新设计. 如果它只有单一的屏幕外观, 因为它没有办法容入在屏幕中, 4GL 画

面表格编译程序就会把它分成两个分页. 画面表格的设计不容许使用 4GL 保

留的四行的屏幕行.

 

 

-2992   已使用过显示卷标 '名称'.

 

因为某些原因所以画面表格的编译程序认为这名称已定义两次. 这些名称只

能在画面表格的规格中定义一次. 重新检视所有名称的用法然后从中寻找出错

误的用法.

 

 

-2993   在画面表格中已指定有一巡回的联结路径.

 

画面表格定义一连串三个或是更多的链接, 使得 A 表格和 B 表格链接, B 表格

和 C 表格链接, C 表格和 A 表格链接. 有时因使用表格别名而使得巡回链接不

是很明显. 重新检视所有在 ATTRIBUTES 区段和 COMPOSITES 的叙述, 而

且画出联结的关系图. 然后修改画面表格, 使联结巡回取消.

 

 

-2994   画面表格已超过最大表格的联结数.

 

可指定的联结数有一极限. 您必须找出简化画面表格的方法.

 

 

-2995   画面表格已超过联结所包含的最大表格数.

 

联结可以包含表格的数目有极限值. 您必须找出简化画面表格的方法.

 

 

-2996   发生无法预期错误码 os-error. 请呼叫 RDS.

 

主机操作系统显示该错误码. "RDS" 曾经为 Informix Software 的名称. 这个讯

息应该不会发生. 若错误再度发生, 请记录所有的情况并联络 Informix 技术支

援部门.

 

 

-2997   请看错误码 '号码' .

 

错误码是由数据库服务器所显示的, 请在说明文件中寻找相关说明, 寻找其他错

误讯息也可以得到更多信息.

 

 

-2998   操作系统的错误 os-error: 本文

 

这错误是由主机之操作系统显示的, 这讯息不应该发生, 当这错误再度发生时请

记录所有的情况并联络 Informix 技术支持部门.

 

 

-2999   SQL 服务器已被中止.

 

应用程序与数据库服务器间不再连接. 可能有人将数据库服务器关机, 或内部错

误可能造成应用程序和数据库服务器之间的管道损坏. 在局域网络系统中, 数据

库服务器处理程序或文件服务器中的处理线可能已被中止, 或文件服务器已停

机. 找寻其他的讯息, 特别是操作系统的信息, 这方面的信息可提供更详细的资

料.

 

 

-3000   ISAM 或系统的错误码 '号码' .

 

可在这说明手册中寻找错误码.

 

 

-3001   在现有的目录中没有画面表格.

 

您只可以执行在现有目录中或在 DBPATH 环境变量所定义的目录中的画面表格,

请更换到包含所要求表格的目录或更改 DBPATH 的内容.

 

 

-3002   无 BLOB 的字段可检视.

 

您已经 View 选单的选项, 这个选项让您检视画面表格中的 TEXT 和 BYTE

字段, 但是却无此画面表格却无这类的字段.

 

 

-3003   BLOB 字段是空的.

 

您已选取 View 选单的选项, 光标所在的字段是一  BYTE 字段, 而且您已按

下 ! 键来编辑字段的内容, 然而这个字段是空的, 没有数据可以检视, 请用

Query 来选取一包含非空的数据字段的列.

 

 

-3005   您没有存取该画面表格 '画面表格-名称' 的权限.

 

画面表格文件的 '画面表格-名称' 已存在, 然而操作系统并没给予您的账户读取

或写入的许可.

 

 

-3006   在 .frm 档案中发现一未知码, 请在再度执行之前重新编译您的画面表格.

 

在重新编译之前请确认 .frm 档案尚未损毁, 如相同的错误再发生, 请检查您执

行的 FORMBUILD 和 PERFORM 产品是相同层级的版本 (在执行命令行的命

令时, 不使用 -s 选项就会显示版本的数字), 如果错误再度发生, 请记录所有的

情况并且联络 Informix 技术支持部门.

 

 

-3007   您的画面规格和现有的 PERFORM 版本不兼容, 请在执行画面规格前

        重新编译.

 

先使用 FORMBULID 编译该画面表格, 然后再执行 PERFORM.

 

 

-3010   找不到数据库的 '数据库-名称' .

 

在画面表格的 DATABASE 区段所定义的数据库名称不能开启, 可能是无法

找到该数据库或是您的帐户无 CONNECT 的权限, 您可使用 INFORMIX-SQL

来区分这些状况, 使用 Database 选单的 Select 选项, 如果 '数据库-名称' 被列

出则只能找到该数据库但不能开启它.

数据库服务器首先在现有目录寻找数据库, 然后寻找在 DBPATH 环境变量指名

的目录, 请检查这些目录中是否存在 database-name.dbs.

 

 

-3011   表格已锁定 -- 不允许读取或写入.

 

因为其他用户已用排他模式将表格锁定, PERFORM 无法继续, 在表格未锁

定时重新执行交易.

 

 

-3019   发生一无法预期的错误码, 请和 Informix Software 联络.

 

请记录所有的情况并且联络 Informix 技术支持部门.

 

 

-3020   表格 '表格-名称' 不在数据库中, 请重建画面表格.

 

在画面表格的 TABLES 区段无法找到该表格, 重新检视 DATABASE 叙述以

确定该画面表格是使用正确的数据库, 如果是如此而且该表格的拼法是您所想

要的, 则该表格可能移除或改名, 您可以使用 INFORMIX-SQL 的 Tables 选

单中的 Info 选项来检查表格名称, 用正确的名称来修订画面表格.

 

 

-3030   栏 '栏-名称' 不在数据库中 -- 重新建立您的画面表格.

 

指定的表格真的在画面表格的 TABLES 区段, 但是在 ATTRIBUTES 区段指

名的字段 '栏-名称' 不存在, 请对照真实表格检查 '栏-名称' 的拼法, 表格可

能被变更或栏名称被更改, 您可以使用 INFORMIX SQL 的 Tables 选单中的

Info 选项来检查栏名称, 用正确的栏名称来修订画面表格.

 

 

-3031   找不到或无法开启画面表格 '画面表格-名称' .

 

PERFORM 无法在现有目录或者使用 DBPATH 环境变量所指定的目录定位已

编译的画面表格 form-name.frm, 或是真的找到该档案却无法开启它, 请检查名

称的拼法, 确定该档案存在, 并确定您的账户有读取的权限.

 

 

-3035   栏 '栏-名称' 已改变字段的型态 -- 请重建您的画面表格.

 

在画面表格中 ATTRIBUTES  区段所指名的栏 '栏-名称' 不再拥有编译画面表

格时所拥有的数据型态 (因为表格已变更), 检查现有的数据型态, 然后检验

画面表格规格以确认栏将显示在具有适当尺寸的画面字段中, 根据要求更改画

面表格并重新建立.

 

 

-3037   栏 '栏-名称' 并不是一合成栏 -- 请重建您的画面表格.

 

在画面表格的规格 INSTRUCTIONS 区段的栏 '栏-名称' 被当做 COMPOSITE

的一部份, 然而在数据库中此字段及其它字段上并没有合成索引 (合成键的所有

栏上的索引), 合成索引在画面表格编译后移去, 所以请回复该画面表格或将

之更改.

 

 

-3050   操作系统的错误, 无法打开暂时档案.

 

PERFORM 尝试打开一先前建立的暂时档案, 寻找操作系统的错误讯息将可得

到更多的信息, 可能是您已超越可开启档案数目的极限, 当这错误再度发生, 请

记录所有情况并联络 Informix 技术支持部门.

 

 

-3060   操作系统的错误, 无法建立暂时档案.

 

PERFORM 尝试建立一暂时档案但失败, 在 UNIX 的系统下请确定您的账户

准许写入 /tmp 目录或所有在 DBTEMP 环境变量指名的目录, 而且该目录

并未满, 也有可能是您超越操作系统开启档案的极限, 在这状况下您必须减少

此画面表格使用的表格的数目.

 

 

-3081   指定的输出档的延伸档名是错的.

 

输出档的档名不得有下列结尾:

.dat

.idx

.aud

.per

.frm

.ace

.arc

.sql

.unl

请选取不同的档名.

 

 

-3082   没有指定程序编辑此 BYTE 字段.

 

画面表格的用户在 BYTE 字段显示处已键入 ! 然而没有为此字段定义

program = 属性.

 

 

-3101   字段 '字段-名称' 不得为 null 值.

 

当将数据加入表格时, 并无指定数据给所有的字段, 然而数据库中定义的字段不

准许有 null 值, 除非提供某个值后才能加入这一列.

 

 

-3120   字段的错误.

 

现有字段所键入的数据和字段的数据型态不合.

 

 

-3200   在现有的清单中找不到列.

 

您必须在执行 UPDATE, REMOVE, NEXT 和 PREVIOUS 命令前查询表格.

 

 

-3210   现有列的位置包含一已删除的列.

 

现在显示的这一列被其他使用者删除已不存在, 您不能使用 UPDATE,

REMOVE, NEXT 和 PREVIOUS 的命令直到您使用 QUERY 来显示有效列.

 

 

-3260   这是一无效值 -- 不存在于表格 '表格-名称' 中.

 

这个字段和在表格 '表格名称' 中一字段有验证连结, 所有要键入此字段的值必

须可在表格中找到, 刚刚输入的值无法找到, 请输入一正确值.

 

 

-3261   无效值 -- 这合成值并不存在在表格 '表格-名称' 中.

 

这个字段和其它的字段一起在画面表格规格的 INSTRUCTION 区段中列出作

为 COMPOSITE. 显示出需要对照档案 '档案-名称' 的匹配栏加以验证, 考虑其

它 COMPOSITE 中的值, 确定您的输入值不会出现在 '表格-名称' 中.

 

 

-3265   '字段-名称' 需要的索引不见了--请恢复原状.

 

所有最紧要的验证连结字段 (在名称前有星号者) 都必须有索引, 也许索引在

画面表格编译时被移去, 请重新建立索引并执行画面表格.

 

 

-3300   在您所前往的方向没有更多的列.

 

您已到达现有列的清单的顶端或底部, 您可以用 QUERY 命令开始新的查询,

或使用 PREVIOUS 或 NEXT 的命令回头来查询表格.

 

 

-3400   没有任何一列符合条件.

 

数据库中无任一列符合输入在画面表格的值, 请输入不同值并重新查询.

 

 

-3420   这个值不在有效范围内.

 

此栏有可接受值的清单或范围 ( 经由画面表格的规格文件的  INCLUDE 属性建立),

您必须输入可接受范围的值.

 

 

-3421   现行使用者无法选取连结字段 'table-column' .

 

画面表格查询表格中用来链接二个表格的栏, 然而您的帐户对该表格或字段无

SELECT 权限, 请和表格的拥有者或数据库的管理员联络以取得此权限.

 

 

-3430   这字段需要一键入值.

 

在所指的字段尚未键入一值之前无法将该列加入表格中, 在画面表格规格档案中,

此栏有定义 REQUIRED 属性, 请在此字段键入一值.

 

 

-3450   有人删除您清单中的一列.

 

另一个存取画面表格所查询的表格的用户删除了您最后选取的列, 重新执行

查询以取得正确的列, 4.0 和以前的版本的 PERFORM 在查询概观档时会传

回这错误讯息, 因先前的版本并无支持概观文件的功能.

 

 

-3451   这画面表格无要求数据输入的字段.

 

这画面表格规格无允许数据输入的字段, 它们都标记成不包含 ALLOWING

INPUT 关键词的 LOOKUP 或 DISPLAYONLY 属性.

 

 

-3452   不准许对远程的表格进行 Add, Update 及 Remove 作业.

 

这个现在查询的表格所在的数据库对现有数据库而言是外部的 (在画面表格

的 DATABASE 区段所指名的数据库), 不得更改这样的表格 (这讯息现在已

不使用, 只有在使用 4.0 或以前的版本才会碰到).

 

 

-3460   这一列已被其他使用者锁定 -- 等一下再试一次.

 

另一个人正在使用这表格, 请等一会再重新输入您的叙述.

 

 

-3500   先前的两笔输入并不相同 -- 请重试一次.

 

为提防打字上的错误, 该字段的值必须键入两次, 所输入的值必须相同, 请小心

重新输入的数据 (画面表格规格文件中此字段有 VERIFYY 属性).

 

 

-3600   此表格没有指定明细表格.

 

您必须先在画面表格的 INSTRUCTIONS 区段建立该表格做其他表格的主要表格.

 

 

-3610   此表格并没有指定主要表格.

 

您必须在画面表格的 INSTRUCTIONS 区段建立该表格做其他表格的明细表格.

 

 

-3620   您没有写入此表格的许可.

 

您没有插入或更新此表格的权限所以不得插入或更新一字段, 请询问表格的拥

有者或数据库的管理员 (DBA) 以得到必要的权限.

 

 

-3630   操作系统的错误,不能写入一暂时档案.

 

PERFORM  在先前曾建立一暂时档案但现在却无法写入, 最有可能的原因是磁

碟已满, 也可能是其他使用者将已建立的暂时档案删除.

 

 

-3650   您必须先删除和此列链接的 '表格-名称' 列

 

您想删除的列是验证连结中最紧要的成员, 您必须先删除和此列相连结的列后

再删除此列.

 

 

-3651   您已超过系统所允许打开表格数目的限制.

 

执行这段叙述会要求 PERFORM 超过操作系统的开启档案极限, 您必须减少画

面表格规格指定的表格的数目.

 

 

-3660   您必须首先更新和此列链接的 '表格-名称' 列.

 

您想更新的列是验证连结中最紧要的成员, 您不允许变更此字段中的值免得

它和其他表格的列做无效的连结, 您必须首先更改和此字段链接的 '表格-名称' 列.

 

 

-3670   操作系统错误, 无法搜寻一暂时档案.

 

PERFORM 在先前建立一暂时档案, 但是现在无法更改该在该档案中的位置,

可能该档案在建立后被其他用户删除, 寻找操作系统的讯息可得到更多有关

此问题的信息.

 

 

-3680   PERFORM 已用完了内存.

 

PERFORM 无法得到它所需要的内存数据空间, 您必须减少画面表格的复杂度.

 

 

-3690   明细关连无法执行 --  '第一' 和 '第二' 表格尚未链接.

 

画面表格的 INSTRUCTIONS 区段指定两表格的主要 - 明细的关连, 然而两表

格尚未连结, 请在 ATTRIBUTES 区段加入一链接属性.

 

 

-3700   您没有读取 '表格名称' 的权限.

 

您的帐户没有在表格 '表格名称' 中 SELECT 的权限, 表格的拥有者和该数据

库的管理员 (DBA) 可给予您的账户此权限.

 

 

-3710   您没有更新 '表格名称' 的权限.

 

您的帐户没有在表格 '表格名称' 中 UPDATE 的权限, 表格的拥有者和该数据

库的管理员 (DBA) 可给予您的账户此权限.

 

 

-3720   您没有加入 '表格-名称' 的权限.

 

您的帐户没有在表格 '表格-名称' 中 INSERT 的权限, 表格的拥有者和该数据

库的管理员 (DBA) 可给予您的账户此权限.

 

 

-3730   您没有删除 '表格-名称' 的列的权限.

 

您的帐户没有在表格 '表格-名称' 中 DELETE 的权限, 表格的拥有者和该数据

库的管理员 (DBA) 可给予您的账户此权限.

 

 

-3731   无法打开表格  '表格-名称' .

 

数据库服务器无法打开代表该表格的档案, 您可能已超越操作系统开启档案的

限制, 如果是这状况, 您必须减少画面表格中所指定的表格数目, 然而请先确定

该文件在数据库的目录下 (它的檔名是 database-name.dbs) 有这表格的档案并且

您有读取该文件的权限, 表格档案的名称是由 '表格-名称' 或三位数字及.dat 字尾

组成.

 

 

-3750   命令中止.

 

这讯息不是由任何现存 Informix 产品所传来的, 当这错误再度发生, 请记录所

有的情况并联络 Informix 技术支持部门.

 

 

-3751   请键入 carriage return 继续.

 

这讯息不是由任何现存 Informix 产品所传来的, 当这错误再度发生, 请记录

所有的情况并联络 Informix 技术支持部门.

 

 

-3752   因为格式存在您不能使用这种编辑的特性.

 

字段已定义 (定义在画面表格的规格文件) 用 PICTURE 属性指定其格式, 您

不得使用这些编辑键 (例如 CTRL-A, CTRL-D,CTRL-X) 来编辑这些字段.

您的输入值只能是可打印字符或 backspace.

 

 

-3754   您已超过虚拟机的堆栈空间.

 

减少您画面规格的复杂度, 特别是巢状循环和 IF 叙述的层次, 而且将复杂的

LET 叙述拆成较简单的叙述.

 

 

-3755   无法存取选取的只读字段的 '附签名称'.

 

传给 C 语言函数 pf_nxfield() 的字段的附签名称是只读字段的名称, 因为使

用者不得在只读字段输入数据, 光标就不可能定位在该处, 请检查提供的附签名

称, 如它是您想要的, 重新检视字段的属性并寻找其定义成只读字段的原因.

 

 

-3756   选取的字段 '附签-名称' 现在不得设定值.

 

选取的字段并不在现有表格中, 光标不允许进入这些字段而且也不能对它们

设定值.

 

 

-3757   字段 '附签-名称' 发生转换的错误.

 

这个值的数据型态在传给 pf_putval() 时无法转换成屏幕字段 '附签-名称' 的

数据型态, 请检查该值以及其 valtype 旗标和画面表格定义的字段的数据形态.

 

 

-3758   下一个选取的字段 '附签-名称' 不在现有的表格.

 

传给 C 语言函数 pf_nxfield() 的字段附签名称是一不在现有的表格中的字段

名称, 光标不允许进入这些字段.

 

 

-3759   显示字段 '字段-名称' 不存于在画面表格.

 

传给 C 语言函数 pf_nxfield() 的字段附签名称不定义在这画面表格中, 检查

所传的字符串, 如果它是所要的, 检查在画面表格之中的定义, 找出何者已改

变, 附签名称用于屏幕外观及 ATTRIBUTE 区段的等号左边, 而字段一名称则

用于等号右边, 常见的错误是混淆此两者, 后者是在参考字段时使用.

 

 

-3760   匹配不得用在非字符字段或表达式之间.

 

在画面表格的 INSTRUCTIONS 区段中的 IF-THEN-ELSE 叙述使用关键词

MATCH 来比较两个字段, 但是至少有一字段不是字符字段, 但 MATCH 只能用

在字符字段, 重新检视 INSTRUCTIONS 区段中的 MATCH 的使用以确定它们都

使用在字符字段上.

 

 

-3761   ERROR -- 尝试把零当作除数.

 

在 INSTRUCTIONS 区段中出现一用零当除数的除法表达式, 请检查所有在

INSTRUCTIONS 区段的表达式, 并寻找会把零当除数的表达式 (除数可能是

使用者输入零的字段), 请用IF-THEN-ELSE 测试, 以防止这种错误发生.

 

 

-3762   在画面表格所定义的用户函数 FUNCNAME , 无法在 C 函数定义表

        格 USER-FUNCS中找到.

 

画面表格的 INSTRUCTIONS 区段包含函数 'FUNCNAME' 的呼叫, 而且

sperform 会认定是 C 语言外部函数的名称, 然而每个函数的名称和地址必须出

现在称为 userfuncs 的静态数组中. 此数组和外部函数的机械码是与用户自定义的

sperform 版本连结, 因为 '名称' 没有出现在数组中, 所以 sperform 无法呼叫它.

请确定您是否执行正确和用户自定义的 sperform 版本 (程序的原始版本并无与外

部函数连接), 检查函数名称的拼法是否正确, 并检验 C 语言函数的来源以确定

userfuncs 定义正确.

 

 

-3763   这个程序的序号错误, 请查询您的安装指令.

 

Informix 软件产品安装过程不正确. 请查询安装程序, 如您需要协助, 请联络

Informix 代理商.

 

 

-3764   屏幕太小. 至少要有 6 行和 30 栏.

 

PERFORM 在屏幕小于六行和三十字段时无法作业, 您必须增加执行 perform

的终端机窗口的大小, 六行和三十栏是最小值, 然而窗口至少要能包含所有会显

示的画面表格.

 

 

-3765   画面表格太大以致于无法放入屏幕窗口.

 

在画面表格文件中所定义的屏幕影像大于现有窗口 (无论是宽度或高度). 如现有

窗口是主要窗口, 它的大小就是由目前使用的终端机来设定. 如现有窗口是由

OPEN WINDOW 开启, 则应该指定更多的列数及栏. 请检查画面表格文件并减少

屏幕影像的大小, 或是在更大的窗口显示.

 

 

-3766   用法:  SPERFORM [-s] [-d database] filename  .  .  .

 

显示 sperform 程序指令列选项的讯息.

 

 

-3767   在指令列发现一未知选项 '选项名称' .

 

请确定您输入正确的指令列选项.

 

 

-3999   在 '行号' 的 '文件名' 发生系统的内部错误

 

这个错误不应发生. 当此错误再次发生, 请记录所有情况, 并联络 Informix 技术

支持部门.

 

 

-4300   此叙述包含太多层级巢状函数呼叫.

 

此叙述呼叫的函数位于其他函数呼叫的参数列表中, 其层级超过 4, 但所允许最

大层级为 4.  如下面的式子:

 Afun(2-Bfun(3+Cfun(4*Dfun(5))))

请重写表达式, 让最内层函数的结果储存在一个变量, 并在表达式里使用这变量.

 

 

-4309   不能在循环中或包含于报表头尾内的 CASE 叙述中执行打印

 

4GL 必需知道页头和页尾分别有多少行, 不然无法知道一页允许多少列. 因为无

法预测循环次数, 或那一个 CASE 的条件会被执行, 所以它避免在有 FIRST PAGE

HEADER,PAGE HEADER 和 PAGE TRAILER 区段的上下文部份使用 PRINT,

所以您必须重新安排程序代码, 使得 PRINT 叙述都可以执行.

 

 

-4310   档案无法在报表头尾中打印.

 

4GL 必需知道页头和页尾分别有多少行, 不然无法知道一页允许多少明细列. 因

为无法预测档案长度, 所以在报表头尾限制档案打印. 您可以在 FIRST  PAGE

HEADER, PAGE HEADER, 和 PAGE TRAILER 等的控制区块中写 PRINT 叙述. 然而

这些区块中不能写 PRINT FILE 叙述.

 

 

-4312   只有在报表内允许 NEED 叙述.

 

NEED n LINES 叙述在报表中是用来造成条件式跳页. 这只和报表中的 FORMAT 区

块的上下文有关. 检查是否有遗漏了 REPORT 叙述.

 

 

-4313   NEED 叙述不能在报表的头尾中使用.

 

NEED n LINES 叙述使用于报表的条件式跳页. 在 FIRST PAGE HEADER, PAGE

HEADER, 和 PAGE TRAILER 区的上下文中是无关的. 如果真有跳页的情形,可能

造成无穷循环.

 

 

-4314   程序无法在此继续或离开选单, 因为不在该 MENU 叙述之内.

 

CONTINUE 或 EXIT 叙述虽使用 MENU 关键词, 但却不是位在一 MENU 叙述的

COMMAND 区段. 不是叙述错误就是其他错误导致 4GL 无法辨识 MENU 叙述.

 

 

-4315   程序无法在此离开 FOREACH 叙述, 因为不在该 FOREACH 叙述之内.

 

CONTINUE 或 EXIT 叙述虽用 FOREACH 关键词, 但却不是位在一 FOREACH 循环

中. 不是叙述错误就是其他错误导致 4GL 无法辨识 FOREACH 叙述.

 

 

-4316   程序无法在此离开 WHILE 叙述, 因为不在该 WHILE 叙述之内.

 

CONTINUE 或 EXIT 叙述虽使用 WHILE 关键词, 但却不是位在一 WHILE 循环

中. 不是叙述错误就是其他错误导致 4GL 无法辨识 WHILE 叙述.

 

 

-4317   程序无法在此离开 FOR 叙述, 因为不在该 FOR 叙述之内.

 

CONTINUE 或 EXIT 叙述虽使用 FOR 关键词, 但却不是位在一 FOR 循环中. 不

是叙述错误就是其他错误导致 4GL 无法辨识 FOR 叙述.

 

 

-4318   程序无法在此离开 CASE 叙述, 因为不在该 CASE 叙述之内.

 

CONTINUE 或 EXIT 叙述虽使用 CASE 关键词, 但却不是位在一 CASE 叙述中.

不是叙述错误就是其他错误导致 4GL 无法辨识 CASE 叙述.

 

 

-4319   符号 '变量-名称' 已定义超过一次.

 

该变量在此之前至少于其他 DEFINE 叙述中出现过一次. 如果该 DEFINE 叙述出

现在一函数内或 MAIN 区段中, 先前的叙述也同在其中. 如果该 DEFINE 叙述是

在任何函数之外, 先前的叙述也同在任何函数之外; 但也有可能是在 GLOBALS

叙述中包含的档案内.

 

 

-4320   符号 '表格-名称' 不是该数据库内的表格名称.

 

此指名的表格没有出现在最近一次 DATABASE 叙述所指名的数据库中. 可能是名

称拼错, 或者是表格名称已经移除或在程序编译时被易名.

 

 

-4321   数组最多只能是三维.

 

跟随在数组名后的下标已超过三个.  4GL 仅支持三维或以下的数组. 请检查

下目标语法, 可能错置一个多余的逗点.

 

 

-4322   符号 '字段-名称 ' 不是该数据库内的栏名称.

 

先前的叙述意指此栏名称为最近的 DATABASE 叙述中数据库的某表格部份. 表格

虽存在, 但栏名称却不存在. 检查栏名称的拼法. 如果无误, 则不是表格已经更动,

便是栏重新命名了, 或者是存取了错误的数据库.

 

 

-4323   变量 '变量-名称' 的数据类型太复杂以至于不能在指配叙述中使用.

 

此变量为一记录或数组. 4GL 并不支持整体记录或数组的指配. 若在记录的情形

下, 必须指配个别记录组件或利用星号记号指配群组组件. 若在数组的情形下,

就必需使用下标来指定单一数组元素.

高于 4.1 版本的 4GL 不会产生此错误.

 

 

-4324   变量 '变量-名称' 不是字符类型, 无法用来包含连结结果.

 

此叙述欲链接两个或更多的字符字符串 (使用逗点作为连结操作数) 并指配结果给

此变数. 遗憾的是此变量并非字符变量. 4GL 在此不会自动做字符转换. 设定一

链接字符串字符串给字符变量, 如果希望结果为数值, 则指配全字符串给一数值变量.

 

 

-4325   在记录指配叙述中的来源和目的记录的类型和 / 或长度不兼容.

 

此叙述使用星号来指配所有对应的组件. 然而, 组件不对称. 4GL 对组件以位置

做匹配条件的要求十分严格, 第一项对第一项, 第二项对第二项; 并不是以名称

做匹配. 如果来源记录的组件与类型和目的记录不同, 则必须逐项写入简单指配

叙述.

 

 

-4326   NULL 值不能应用在子字符串上.

 

NULL 值是一仅和完整变量相关的完整值. 您可以设定 NULL 给此变量名称 (省略

子字符串记号) 让整个变量包含空字符串. 或者指配空白给子字符串. 删除部份字符串的

唯一方法是写一个能撷取欲保留的头尾子字符串的表达式, 并予以连接.

 

 

-4327   变量 '变量-名称 ' 不是 INTEGER 或 SMALLINT 类型. 无法作为循环索

        引使用.

 

FOR 循环的索引变量必须是整数类型. 指定一个不同的变量或重新定义该变量.

 

 

-4328   变量 '变量-名称' 的数据类型太复杂, 以至于无法作为一函数的传回目

        的地.

 

此指名的变量是一记录或数组. 只有简单变量可由函数传回, 即使函数可以传回

一简单变量列表. 若为记录, 可以使用星号或 THRU 记号为速记来指定一组件列表.

 

 

-4329   变量 '变量-名称' 不是一记录. 只有记录变量可以使用 .* 或 THROUGH

        速记来扩展.

 

您使用了(.*) 或 THRU (THROUGH) 速记记号来指定一记录的组件列表. 遗憾的是

该变量并没有定义为记录. 确定变量指定正确并已定义为记录.

 

 

-4330   值无法从 MAIN 程序中利用 RETURN传回.

 

虽然在 MAIN 程序中, RETURN 相当于 EXIT PROGRAM, 但却不能含一个

传回值. 此错误由 NewEra 程序产生.

 

 

-4333   此名称已由不同参数个数呼叫过.

 

在程序前段已有在参数清单中以不同个数的参数呼叫相同的函数或事件发生. 至

少有一次呼叫是错误的. 检查 FUNCTION 或 EVENT 叙述的名称, 以找出正确的参

数数目. 然后检验所有呼叫是否正确. 当此错误讯息在函数前头连同错误 -4336

一起发生时. 先修正错误 -4336, 通常错误 -4333 也会消失. 此错误由 NewEra

程序产生.

 

 

-4334   变量 '变量名称' 目前的形式太复杂以至于不能在此叙述中使用.

 

4GL 对 "太复杂" 的解释是 "有太多的组件部份". 叙述中只可以使用具备单一组件

的简单变量. 如果 '变量-名称' 是数组,  则必需提供一下标以选取一个元

素. 如果是一记录, 则必需只选择其中一个组件. (如果此叙述允许一变量串行,

如INITIALIZE 叙述, 您可以使用星号或 THRU 记号将一记录名称转换成一组

件串行.)

 

 

-4335   符号 field 不是记录 record 的元素.

 

此叙述参考到 record.field. 虽然变量 record 的确是一记录, 但是 field 却不

是其组成字段的名称之一. 找出 record 的定义 (可能在 GLOBALS 档案中) 并确

定其域名. 然后更正 field 的拼法.

 

 

-4336   参数 '变量-名称' 没有定义在函数或报表中.

 

此 '变量-名称' 名称出现在该函数的 FUNCTION 叙述的参数列中, 却没有在函数

的 DEFINE 叙述中出现. 所有的参数必须在使用前于函数定义. 可能您写好

DEFINE 叙述, 但在 '变量-名称' 时拼错了字.

 

 

-4338   符号 '变量-名称' 已经定义为参数.

 

该名称出现在 FUNCTION 叙述的参数列, 而且出现在该函式本体内至少两个

DEFINE 叙述中. 但是只允许在 DEFINE 叙述中出现一次.

 

 

-4339   4GL 用尽数据的内存空间.

 

程序太大以至于不能编译. 可将之分成数个模块且个别编译之.

 

 

-4340   变量 '变量-名称' 的数据类型太复杂以至于不能在表达式中使用.

 

NewEra 对 "太复杂" 的解释是 "有太多的组件部份". 表达式中只有 (具备单一组

件) 简单变量可以使用. 如果指定变量是数组, 则必需提供一下标以选取一个

元素. 如果是一记录或对象, 则必需只选择其中一个组件. 该错误是由 NewEra

程序所产生

 

 

-4341   累积函数只允许在报表和 SELECT 叙述中使用.

 

累积函数如 SUM, AVG, 和 MAX 只能出现在 SQL 叙述和报表主体内的这类叙述

中. 它们在程序叙述中不被普通表达式所支持. 您可以写一个特定应用函数来完

成数据的累积函数; 然而您必需用 SUM, AVG, 和 MAX 等保留字以外的名称.

 

 

-4342   PAGENO 和 LINENO 只允许在报表中出现.

 

这些函数只与报表函数主体 (尾随一 REPORT 叙述) 有关. 只有在报表程序内,

目前页数或行数才有意义. 可以透过广域变量在报表之外取得这些值. 举例来

说, 您可以设一个如下的叙述在 PAGE HEADER 控制区:

LET CURR_PAGE = PAGENO

如此便可将目前页数设给广域变量 (如例中 CURR_PAGE), 我们可用报表函数外的

程序代码测试.

 

 

-4343   下标不能应用在此表达式上, 因为不是一字符或数组参照.

 

在数组表达式之后可以写入下标表达式 (即正整数以逗号分开并以中括号括住).

字符表达式之后亦可以指定子字符串 ( 中括号中的两个数字 ). 然而此叙述中括号

内的表达式不是在字符或数组之后. 再检查该叙述的标点符号与其变量宣告.

文中错误 -4343 是由 4GL 4.1 版产生

 

 

 

-4343   下标不能应用在此表达式上, 因为不是一字符或数组参照.

 

在数组表达式之后可以写入下标表达式 (即正整数以逗号分开并以中括号括住).

字符表达式之后亦可以指定子字符串 ( 中括号中的两个数字 ). 然而此叙述中括号

内的表达式不是在字符或数组之后. 再检查该叙述的标点符号与其变量宣告.

文中错误 -4343 是由 4GL 4.1 版产生

 

 

 

-4344   变量 '变量-名称' 不能有子字符串, 因为它不是字符变量.

 

此叙述在标识符后似乎有一子字符串式 (中括号括住的两个数字), 然而该变量类

型不是 CHAR 或 VARCHAR. 如果希望该变量是子字符串, 那不是名称错误就是定义

错误. 如果您指的是数组下标, 也是同样状况.

 

 

-4345   变量 '变量-名称' 已有子字符串附加于上.

 

该名称之后有一子字符串式 (中括号括住的两个数字) 而又有另一个子字符串式. 这

是不合法的. 或许是在编辑另一变数时, 意外的删除了标点符号. 或者如果您是

指所选的字符项目二维数组的下标其后跟随的选定元素之子字符串, 问题是 '变量

-名称' 却没有定义为一数组.

 

 

-4346   缩写只能包含 INTEGER 或 SMALLINT 表达式.

 

数组下标是整数值, 而只有整数变量可以使用. 此叙述包含使用 FLOAT, CHAR 或

其他类型变量的下标, 但在下标表达式中数据类型不会自动转换. 检查叙述中的

下标表达式, 或许只是输入错误变量名称. 如果不是, 您就只能修改程序, 储存

数组下标于整数变量 (您可能希望一具正因子 0 的 DECIMAL 值也能执行, 但

那又是其他情形.)

 

 

-4346   缩写只能包含 INTEGER 或 SMALLINT 表达式.

 

数组下标是整数值, 而只有整数变量可以使用. 此叙述包含使用 FLOAT, CHAR 或

其他类型变量的下标, 但在下标表达式中数据类型不会自动转换. 检查叙述中的

下标表达式, 或许只是输入错误变量名称. 如果不是, 您就只能修改程序, 储存

数组下标于整数变量 (您可能希望一具正因子 0 的 DECIMAL 值也能执行, 但

那又是其他情形.)

 

 

-4347   变量 '变量-名称' 不是一个记录. 无法参考记录元素.

 

叙述中的 '变量-名称' 后附有点号和其他名称. 这即是您参照一记录变量组件

的方法. 然而 '变量-名称' 并未定义为记录. 不是写了错误变量的名称就是 '变

数-名称' 定义错误.

 

 

-4348   此类型的累积必需应用在一表达式, 不是 '*'. 只有 PERCENT 和

        COUNT 累积函数才使用 '*'.

 

此叙述中的累积函数如 SUM 和 MIN, 必需运用在特定栏或有关特定栏的表达式.

在 SQL叙述中的星号意指 "全数列", 只有需要计算所有列时,累积函数才有用.

 

 

-4349   PERCENT 和 COUNT 报表累积函数无法在表达式中使用.

 

这些累积函数只计算全部的列, 而不管这些列的内容. COUNT 传回列数, PERCENT

传回列数占全表格的百分比. 这些函数唯一允许的参数是 '*', "代表所有列".

他们无法引用于特定的栏或有关特定栏的表达式.

 

 

-4350   程序无法继续 FOR 循环, 因为不在 FOR 循环中.

 

有一个 CONTINUE FOR 叙述不在一组 FOR 叙述和 END FOR 叙述之间. 可能有

FOR 叙述意外地删除, 或改变成别种循环如 WHILE 或 FOREACH.

 

 

-4351   程序无法继续 WHILE 循环, 因为不在 WHILE 循环中.

 

有一个 CONTINUE WHILE 叙述不在一组 WHILE 和 END WHILE 叙述之间. 可能

意外地删除 WHILE 叙述, 或改变成别种循环如 FOREACH 或 FOR.

 

 

-4352   程序无法继续 FOREACH 循环, 因为不在 FOREACH 循环中.

 

有一个 CONTINUE FOREACH 叙述不在一组 FOREACH 和 END FOREACH

叙述之间. 可能意外地删除 FOREACH 叙述, 或改变成别种循环如 WHILE 或

FOR.

 

 

-4353   报表中指定的 ORDER BY 或 GROUP 项目类型不适用于排序.

 

数据库服务器不支持文字或字节型态的栏比较函数如 TEXT 或 BYTE. 因此这

些类型的栏不能用在排序或分类上. 使用其他栏 (通常是表格的主键) 来排序或

分类.

 

 

-4354   累积函数无法以TEXT或 BYTE 变量执行.

 

这个叙述引用累积函数, 如针对定义为 BYTE或 TEXT 变量的加总 (SUM). 这

种变量不在累积函数的领域中. 检查叙述中函数的使用, 并确定它们适用到你想

要的变数.

 

 

-4356   一个分页标题已指定在此报表中.

 

报表中只允许一个 PAGE HEADER 控制区块. 在此控制区块的叙述必需适用于此报

表的每一页 (除了第一页可写入 FIRST PAGE HEADER 区块). 找出其他

PAGE HEADER 控制区块, 然后将其叙述并入一个控制区块.

 

 

-4357   一个分页页尾已指定于此报表中.

 

报表中只允许一个 PAGE TRAILER 控制区块. 在此控制区块的叙述必需适用于此

报表的每一页. 找出其他 PAGE TRAILER 控制区块, 然后将其叙述并入一个控制

区块.

 

 

-4358   第一个分页标题已指定于此报表中.

 

报表中只允许一个 FIRST PAGE HEADER 控制区块. (毕竟只有一个第一页.) 找出

其他 FIRST PAGE HEADER 控制区块, 然后将其叙述并入一个控制区块.

 

 

-4359   报表中已指定一个 ON EVERY ROW 子句.

 

报表中只允许一个 ON EVERY ROW 控制区块. 找出其他 ON EVERY ROW 控制区

块, 然后将其叙述并入一个区块.

 

 

-4360   报表中已指定一个 ON LAST ROW 子句.

 

报表中只允许有一个 ON LAST ROW 控制区块. 找出其他 ON LAST ROW 控制区

块, 并且将其叙述并入一个区块.

 

 

-4361   群组累积只能发生在 AFTER GROUP 子句中.

 

应用到一组列的累积函数 (GROUP COUNT, GROUP PERCENT, GROUP SUM,

GROUP AVG, GROUP MIN 和 GROUP MAX) 只能在处理完一整群组时在报表中

使用, 也就是说在 AFTER GROUP 控制区块中. 确定 AFTER GROUP 叙述存在且

能辨识. 如果您另外需要一个群组累积的值 (例如在 PAGE TRAILER 控制区块中),

您可以利用 AFTER GROUP 控制区的 LET 叙述, 将值存于一广域变量.

 

 

-4362   报表无法于分页头尾时跳至分页顶点.

 

当 SKIP TO TOP OF PAGE 执行时, 页首子句必需在页尾子句之后执行 (以显示固

定的分页结束内容). 如果该叙述允许在头尾子句中, 可能造成无限循环.

 

 

-4363   报表无法在头尾的循环中跳行.

 

4GL 必需知道页头和页尾需要多少行数 (不然无法知道一页允许多少列). 因为无

法预测循环的执行次数, 所以在 PAGE HEADER, PAGE TRAILER 和 FIRST PAGE

HEADER 区段的循环限制 SKIP 叙述的使用.

 

 

-4365   插断或离开的迟缓只能在主程序中执行.

 

DEFER INTERRUPT 和 DEFER QUIT 叙述只能出现在程序的 MAIN 区段. 他们只可

以在程序中出现一次.

 

 

-4366   叙述中的变量数目与数据库栏的数目不符.

 

必需有一程序变量可接受或提供数据给叙述中指名的栏. 栏名称与变量名称之间

可能会有模棱两可的情形发生. 当程序变量与栏名称相同时, 您可以藉前置一个

 @ 字符或其表格名称,以强制 4GL 使用数据库栏名称.

 

 

-4367   主程序的插断已迟缓一次. 每一主程序只能迟缓插断一次.

 

DEFER INTERRUPT 和 DEFER QUIT 叙述只能出现在程序的 MAIN 区段一次.

它们只可以在程序中出现一次.

 

 

-4368   离开主程序已迟缓一次. 每一主程序只能迟缓离开一次.

 

DEFER INTERRUPT 和 DEFER QUIT 叙述只能出现在程序的 MAIN 区段一次.

它们只可以在程序中出现一次.

 

 

-4369   符号 '变量-名称' 不代表一已定义变量.

 

所示的变量名称不符任何在 DEFINE 叙述中定义的变量. 检查变量名称的拼法.

如果无误, 则往回找出为何尚未定义. 可能是原始模块的 GLOBALS 叙述遗漏,

或者是档案错误. 也可能是从另一模块或函数拷贝程序代码时, 没有拷贝 DEFINE

叙述.

 

 

-4370   变量 '变量-名称' 无法在确认中使用.

 

VALIDATE 叙述只能在简单变量上作业, 它无法接受记录或数组. 如果指名记录,

您可以使用星号或以 THRU 记号为速记做为记录的组成字段列表.  然而如果一记

录组件本身仍是记录型态, 则必需个别列出.

 

 

-4371   在程序模块中游标一定要宣告为唯一的.

 

DECLARE cname CURSOR 叙述中, 标识符 cname 只能使用在源文件的一个

DECLARE 叙述里. 函数内的 DECLARE 叙述同理. 虽然函数内 DEFINE 叙述中定义

的变量是局部的, 但函数内的光标仍属于广域的.

 

 

-4372   光标 '光标-名称' 尚未宣告于程序模块中. 一定要在使用之前宣告光标.

 

此光标名称出现于一已宣告光标名称或需要准备叙述的地方, 但却无此名称的游

标 (或叙述) 在程序中宣告 (或准备). 检查该名称的拼法. 如果无误则往回看看

为何没有宣告. 可能是DECLARE 叙述出现在没有被包含的 GLOBALS 档案中.

 

 

-4373   在行 '行数' 及字符 '字符数' 上发现一文法错误. 不了解此上下文的结构.

 

这是显示无法剖析 4GL 叙述的一般讯息. 此处的行数跟字符数标示出发生问题

的地方, 然而错误往往不是在此. 从此处往回寻找其他错误讯息, 及遗漏的标点

符号, END叙述. 如果在 '行数' 的叙述是 END FUNCTION, END MAIN, 或 END

REPORT, 一个可能的原因是在先前的行中, 少了另一个 END. 通常漏掉 END IF

也是可能的原因.  如果原因不明, 则专心除去其他特定的错误讯息, 此时此错

误讯息可能也同时消去.

 

 

-4374   此叙述的类型只能使用在 MENU 叙述中.

 

此类叙述, 如 SHOW OPTION 叙述, 只在 MENU 叙述才有意义. 检查附近的程序代码

看看是否有错置 END MENU  叙述. 如果想要在选单显示之前设定选单的外观,

应在 MENU 范围内使用 BEFORE MENU 区块.

 

 

-4375   分页长度太短以至于无法涵盖指定分页页头和页尾的长度.

 

检查 OUTPUT 区段和所有 HEADER 及 TRAILER 子句中的叙述. 这些叙述使用的总

行数必须少于分页长度以能印出某些明细列.

 

 

-4376   暂时档案 '文件名' 无法建立以供写入.

 

检查您的 UNIX 系统帐户是否允许在  /tmp 目录, 或者在 DBTEMP 环境变量中

指名的目录下建立档案. 检视其他操作系统上的错误讯息. 可能是磁盘空间已满

或者已到达开启档案数目的限制.

 

 

-4377   输出档案 '文件名' 无法建立或开启.

 

在 UNIX 系统上, 检查您的账号是否可在 '文件名' 建立的路径上建立该文件

案. 检视操作系统上其他的错误讯息. 可能是磁盘空间已满或者已到达开档数目

的限制.

 

 

-4378   没有指定输入档案.

 

您已从指令列中启动 C-code 或 p-code 编译程序, 但却没有指定要编辑的源文件.

重复此一指令, 并指定一源文件.

 

 

-4379   无法开启输入档案 '文件名'.

 

不是该档案不存在就是您的 UNIX 账号不允许读取该档. 亦有可能是档名拼错

或指定路径错误.

 

 

-4380   所示档案 '文件名' 无法建立.

 

检查 UNIX 系统上指定的档案目录路径是否正确, 并且看看您的账户是否允许

在此目录建立一个档案. 检视在操作系统上是否有其它的错误讯息. 可能是磁盘

空间已满或者已到达开启档案数目的限制.

 

 

-4381   输入档案 '文件名' 具不正确的扩展名. 文件名必须以 .4gl 作为

扩展名.

 

输入程序源文件名称时不需要键入 .4gl 为扩展名. 然而一但键入扩展名, 则

必须是 .4gl. 如果扩展名输入错误, 则再键入一次文件名, 不要加扩展名. 如

果档案真有不同的扩展名, 则改变之.

 

 

-4382   不能扩充有数组成员的结构

 

除了在 LET 叙述, ".*"及 THROUGH 符号不可用于扩充有数组成员的记录.

错误讯息 -4382 是由 NewEra 所发出.

 

 

 

-4383   元素 '名称-1' 和 '名称-2' 不属于相同的母记录.

 

此两个名称使用在需要同一记录的两个组件的地方, 然而它们不属于相同的记

录. 检查两个名称的拼法,  如果无误, 则回到该记录定义的地方, 看看为何没有

同时包含此两个名称的组件字段.

 

 

-4384   此符号名称不代表任何记录的元素.

 

此名称是用在 4GL 希望记录组件名称出现的地方. 检查该名称的拼法. 如果无

误, 则回到该记录变量定义的地方, 看看为何没有同时包含此名称为一组件字段.

 

 

-4385   报表累积函数不能巢状放置.

 

累积函数不能巢状放置,  最初是因为当外部累积函数在运算时, 内部累积函数的

值是未知的. 重写累积函式表达式, 使其仅作用在栏或栏的简单表达式. 在

AFTER GROUP OF 子句中, 可将累积值存至一程序变量, 然后运用在后续的群组.

 

 

-4386   此报表有太多 ORDER BY 字段. 最大数目是 '数目' .

 

排序的字段数目有限制.  您必需重新设计此报表, 让它以数字栏即能排序. 或者

可以在数据传给报表之前先行排序, 并在报表主体中的 ORDER  BY 叙述上指定

EXTERNAL关键词.  更有效率的方法是令数据库服务器产生正确次序的列在产生

列的光标上 (使用 SELECT...  ORDER BY 产生之).

 

 

-4387   报表右边的空白必需多于左边.

 

如果报表右边的空白没有多于左边, 每行可能没有足够的数据空间. 检查

OUTPUT区段两边的 MARGIN 叙述的值是否合理.

 

 

-4388   每一个报表输入参数允许一个 BEFORE GROUP OF 子句和 AFTER GROUP

        OF子句.

 

报表欲定义第二组 BEFORE GROUP OF 或 AFTER GROUP OF 区块于单一报表参数.

只有允许一组控制区块. 找出此参数的所有区块, 将之结合为一.

 

 

-4389   报表中的 IF 叙述有太多的巢状层次.

 

您超过 IF 叙述巢状层次的最大值 5.  可能是一个 END IF 叙述遗漏了.  如果

不是, 您必需修改报表的逻辑, 减少巢状层次.

 

 

-4390   每一个 MENU 叙述只允许有一个 BEFORE MENU 子句.

 

在 MENU 中只能有一个 BERFORE 叙述区块.  确定您的 MENU 叙述的范围有正确

地标记 END MENU. 然后组合所有此选单的预备码成为单一的 BEFORE MENU 区块.

此错误仅由 4.1 版的 4GL 传回.

 

 

-4391   当执行 INPUT BY NAME 或 INPUT ARRAY 时, BEFORE/AFTER  域名

        只由由域名字尾指定. 屏幕数组及屏幕记录的元素是不允许的.

 

只有同一画面表格字段的名称可于 BEFORE 或 AFTER 子句使用. 此域名是

定义在画面表格定义的 ATTRIBUTES 区段中, 常与数据库的栏名称相同. 以下是

ATTRIBUTRS 区段的范例行:

atag = customer.customer_num,noentry;

tag2 = formonly.total,format="#######.##";

这些字段的名称分别是 customer_num 和 total.

在此 4GL 叙述中, 您写成一个名称, 以另一个名称和一个点做为前缀.  这种语

法是使用在指定屏幕记录和屏幕数组的组件上, 或不同表格中相同名称的数据库

栏. 但在此并不适用.

 

 

-4392   4GL 编译程序用尽 4GL 程序符号的数据存放空间内存. 如果程序模块太

        大, 将之分成数个模块可以缓和此情形.

 

重编您的原始程序成为一组可单独编辑的程序模块, 使其可以个别编译.  或者

修改程序使需要较少的符号, 如用数组替代很多类似的变量. 此错误也可能和

CONSTRUCT 叙述有关. 如果在很多字段上有一 CONSTRUCT 叙述, 将此叙述移至

一函数并将该函数置于不同原始模块内, 可以不做其它改变而缓和这种问题.

 

 

-4393   MENU 叙述已超过选项的最大值.

 

一个选单最多只能有 25 个选项. 确定没有遗漏 END MENU 叙述, 因而结合两组

选单. 如果选单无误, 则必需修改程序代码, 使其不超过该限制, 如建立一份选单阶层.

 

 

-4394   警告: 在非正式函数的标头中的正式参数不能有初始值. 该参数的初始

        值将忽略. 如果仍欲预设该参数值, 则必需使用正式函数标头来默认.

 

虽然正式 (函数雏形方式) 定义的参数可以有初始值, 非正式函数则不能. 该变

数的初始值会忽略. 如此值为所要的预设参数值, 则使用函数雏形的正式定义

格式来指定预设. 此错误讯息只由 NewEra 传回.

 

 

-4395   指定的数据库栏名称有太多下标.

 

在此叙述中, 数据库栏的名称后有一组包含几组数字的中括号.  数据库栏的中括

号唯一正确的使用方法是从字符栏中选取一子字符串. 但此法必需恰好写入两个数

字, 分别是子字符串的首尾字符. 此处超过两个数字. 检查标点符号并更正之.

 

 

-4396   行 '行号' 的 MENU 宣告没有终止.

 

4GL 无法识别是否有 END MENU 叙述配合在此行的 MENU 叙述.  从此行起, 往下

寻找END MENU 叙述应该存在的地方并加入此叙述.

 

 

-4397   行 '行号' 的 IF 叙述没有终止.

 

4GL 无法识别是否有 END IF 叙述配合在此行的 IF 叙述.  从此行起, 往下寻找

ENDIF 叙述应该存在的地方并加入此叙述.

 

 

-4398   行 '行号' 的 CASE 叙述没有终止.

 

4GL 无法识别是否有 END CASE 叙述配合在此行的 CASE 叙述.  从此行起, 往下

寻找END CASE 叙述应该存在的地方并加入此叙述.

 

 

-4399   行 '行号' 的 WHILE 叙述没有终止.

 

4GL 无法识别是否有 END WHILE 叙述配合在此行的 WHILE 叙述.  从此行起, 往

下寻找 END WHILE 叙述应该存在的地方并加入此叙述.

 

 

-4400   行 '行号' 的 FOR 叙述没有终止.

 

4GL 无法识别是否有 END FOR 叙述配合在此行的 FOR 叙述.  从此行起, 往下寻

找 END FOR 叙述应该存在的地方并加入此叙述.

 

 

-4401   此链接作业建立太长的字符串以至于不能存入目的字符串变量.

 

该叙述链接两个或更多的字符字符串并将结果存进另一个 CHAR 或 VARCHAR 类型

的变数. 然而链接结果超过该变量所能容纳. 如果超过的长度是因为多余的空

间, 可以利用 CLIPPED 函数避免多余的空白包含进组合结果.  否则您将必需

定义接收变量长度至少为可以容纳输入变量长度之总合.

 

 

-4402   此类型态的叙述中, 下标只可应用于数组变量来选择个别数组元素.

 

此叙述包含后接一组中括号的变量名称, 但该变量不是数组变量.  检查叙述中的

标点符号和所有名称的拼法注记. 下标名称必需是数组. 如果在叙述中欲使用一

字符子元串, 则必需修改程序.

 

 

-4403   此变量 '变量-名称 ' 的维度与下目标维度不符.

 

此数组名标记的下标维度和定义的数目不同. 检查下目标的标点符号, 如果无

误, 就检查定义 '变量-名称' 的 DEFINE 叙述.

 

 

-4405   函式的参数数目超过允许的最大值.

 

该讯息不会由任何目前的 Informix 产品传回.  如果再度发生此错误, 请记录所

有情况并联络 Informix 技术支持部门.

 

 

-4406   该行有不匹配的引号.

 

该行包含奇数个引号.  由左至右检查, 确定所有文字字符串均包含在一对引号内.

所有文字字符串必需在同一行内开始并结束. 然而有两个方法处理长字符串. 第一,

您可以在跳开行尾时, 用反斜杠作结尾字符 (但一组引号内的字符串最多只能容纳

 80  个字符). 二, 在 DISPLAY 和 LET 叙述中, 用逗点连接较短的文字字符串.

这里有两个范例.

DISPLAY "abcdefghijkl\

mnopqrstuvwxyz"

DISPLAY "abcdefghijkl",

"mnopqrstuvwxyz"

两组显示字母均不包含结尾空白.

 

 

-4407   该行有一无法打印的字符.

 

该行包含一不寻常的字符. 4GL 认为是源文件损坏. 编辑该文件并移除该字符.

如果您无法用编辑器看见或选取此错误, 您必需删除并重新输入此行.

 

 

-4408   该行引号内的字符串太长.

 

文字字符串长度的限制是 80 个字符.  然而, 在 DISPLAY 和 LET 叙述中, 可以使

用逗点连接较短的文字字符串. 参考讯息 -4406 作为范例.

 

 

-4409   该行中有不正确的字符.

 

该行包含一些可打印字符和一般空格符以外的字符. 移除这些无效的字符 (它

们可能无法在正常编辑下看得到). 如果您无法利用您的编辑程序看见或选取这

些字符, 则必需删掉该行重新输入.

 

 

-4410   先前的行中有太大或太小的数字常数.

 

该行的数字常数无法处理.  检查所有数字的位数和标点符号. 例如说, 确定没有

不是数字的字母. 任何数字不得超过 50 位. 根据上下文, 数字限制在三种范畴:

绝对值不超过 32,767

INTEGER: 不超过 2,147,483,647 的绝对值

DECIMAL: 从 10 to 第 130 power 至 10 to 第 124 power 的绝对值

 

 

-4411   该行的文数字标识符太长.

 

标识符长度不得超过 50 字符. 检查所有标识符的拼法和标点符号. (或许有两

个名称结合在一起.)

 

 

-4412   RUN 指令的值只能传回给 INTEGER 或 SMALLINT 变数.

 

RUN 指令只传回已执行过程序的整数传回码.  这种情形不会产生数据型态的自动

转换, 它的结果必需指配给一整数变量.

 

 

-4413   卷标 '卷标-名称' 已经在函数/报表中定义过了.

 

这个名称在两个或以上的 LABEL 叙述中出现. 检视名称的拼法; 如果它是您想要

的, 请检查函数, 报表, handler 或主程序中其它的 LABEL 叙述并找出使用相同

名称的LET 叙述, 更改其中一个以使用不同的名称. 此错误只由 NewEra 传回.

 

 

 

-4414   卷标 '卷标-名称' 已经使用但从未定义在函数/报表中.

 

GOTO 或 WHENEVER 叙述参考到所显示的卷标, 但在目前的函数, 报表, handle

或主程序中没有可对应的 LABEL 叙述. 检视标签的拼法, 如果它是您想要的,

检查须定义它的 LABEL叙述.  您无法以 GOTO 出程序区块; 标签必须定义在使

用它们的函数主体内. 这个错误只由 4GL 传回.

 

 

 

-4415   指定于报表中的 ORDER BY 或 GROUP 项目必须是报表参数之一.

 

在 ORDER BY, AFTER GROUP OF 或 BEFORE  GROUP OF 叙述中使用的

名称必须也出现在 REPORT 叙述中的参数列. 以广域变量或其他表达式为基础

做顺序或群组是不可能的.  检视在叙述中名称的拼法并和 REPORT 叙述比较.

 

 

-4416   确认字符串 "%s" 有错误.

 

在 syscolval 表格中改变 DEFAULT 或 INCLUDE 使其有适当的值.

 

 

-4417   这种型态的叙述只能用在报表中.

 

像 PRINT, SKIP 或 NEED 这类叙述只有在报表函数本体时才有意义, 其中该函数

有暗示报表表格接受输出.

 

 

-4418   在 INPUT ARRAY 或 DISPLAY ARRAY 叙述中使用的变量必须是一个数组.

 

跟随 DISPLAY ARRAY 或 INPUT ARRAY 之后的名称必须是记录数组的名字. 检查

名称拼法, 如果它是您想要的, 找出并检查 DEFINE 叙述看看它为什么不是一个

数组. (如果您想显示或输入一个简单变量或一个数组的元素, 则使用 DISPLAY

或 INPUT 叙述.)

 

 

-4419   使用在 CONSTRUCT 叙述的变量必须是一个字符变量.

 

在 CONSTRUCT 字之后的名称必须是定义成 CHARACTER 或 VARCHAR 变量. 因为它

接收的字符串可能是长的, 所以它应该是长变量. 请检查名称拼法, 如果它是您想

要的, 找出并检查 DEFINE 叙述看看它为什么不是字符型态.

 

 

-4420   打印在档头或档尾子句的 IF-THEN-ELSE 叙述 IF 部份的行数必须和列

        印在ELSE 部份的行数相同.

 

4GL 必须知道有多少行将填入档头和档尾区段 (否则它无法知道有多少明细列要

放进分页). 因为它无法分辨 IF 叙述的那一部份将执行, 所以它需要二者都产生

相同的输出行数.

 

 

-4421   您不可以在另一个  INPUT 叙述或 PROMPT 叙述里使用 INPUT 叙述, 即

        使是它被放在一个条件或循环叙述时的情况.

 

您可在另一个 INPUT 叙述或 PROMPT 叙述中执行 INPUT 叙述, 但是为了达到此

目的, 您必须在函数中放置 INPUT 叙述且呼叫此函数. 您不能在一 INPUT 叙述

内加上另一INPUT 叙述的文字.

 

 

-4422   您不可以在另一个 INPUT 叙述里使用 CONSTRUCT 叙述, 这包含当

        CONSTRUCT 被放在一个条件或循环叙述时的情况. 您必须呼叫执行

        CONSTRUCT 叙述的函数.

 

您可在 INPUT 叙述中执行 CONSTRUCT 叙述, 但是为了达到此目的, 您必须将

CONSTRUCT 叙述放入一函数中且呼叫此函数. 您不能在 INPUT 叙述内加上

CONSTRUCT 叙述的文字.

 

 

-4423   在展示画面表格字段时 DISPLAY 叙述中的 CLIPPED 和 USING 选项不得

        使用.

 

关键词 CLIPPED 和 USING 无法在 DISPLAY 和 DISPLAY BY NAME 叙述中使用.

在画面表格档案中指定的画面表格字段的展示格式是由字段属性来控制. 表尾空

间并不会在字段中出现. 为了得到 USING 的功效, 编辑画面表格档案并在字段

中增加 USING 属性.

 

 

-4424   变量尚未定义成记录或对象.

 

此变量是藉由使用星号或藉由关键词 THRU 或 THROUGH 来指定. 然而, 它尚未定

义成记录或对象. 检视名称的拼法. 如果它是您所想要的, 找到此变量的定义,

并且找出为何其没有定义成您所想要的. 这个错误只由 NewEra 传回.

 

 

 

-4425   变量 '变量名称' 尚未定义 LIKE 表格 '表格-名称' .

 

此变量已在一个 UPDATE 的叙述中之 SET 子句中使用. 然而, 它并未定义 LIKE

被更新的表格. 使得 4GL 无法由记录组件联想到表格字段. 您能改变变量的定

义, 或您可重写 UPDATE 叙述来显示栏名和记录组件清楚的关系.

 

 

-4426   PRINT 叙述只能在报表中使用. 如果您想要打印而不用屏幕定位, 可使

        用DISPLAY 叙述, 而不用到任何字段或屏幕目的字段.

 

关键词 PRINT 特别用来产生输出列到报表, 关键词 DISPLAY 将输出引到屏幕.

或许此叙述是偶然地从报表中意外地拷贝来的; 更有可能贸然尝试在屏幕上输

出.  在后者的状况, 只要将 PRINT 改变成 DISPLAY 通常就足够了.

 

 

-4427   DISPLAY 叙述的 COLUMN 特性只能在没有屏幕或字段目的地显示时使用.

 

COLUMN 函数传回一串空白, 其长度可达到显示输出中的一特定栏. 您可将它用在

不合格的 DISPLAY 或用在 DISPLAY AT, 但它不适合用在 DISPLAY TO 或

DISPLAY BY NAME.

 

 

-4428   您无法在 INPUT 或 PROMPT 叙述中使用 PROMPT 叙述, 即使是它放在

        条件叙述或循环叙述中.

 

您可以从另一个 PROMPT 叙述或从 INPUT 叙述中执行 PROMPT 叙述, 但要达到此

目的, 您必须将 PROMPT 叙述放于一函数中, 然后呼叫此函数. 您不可以将

PROMPT 叙述的本文留在 INPUT 叙述或另一个 PROMPT 叙述中.

 

 

-4429   报表与函数参数不可以是数组.

 

您不可以将整个数组当参数传给函数. 您可以使用下标来传递单一的数组元素,

发生此错误的数组可能是用星号标记来传递的记录变量中的一个组件. 这个错误只

由 4GL 传回.

 

 

 

-4430   数值无法用 RETURN 从报表传出

 

报表不能含 RETURN 叙述,因这会将控制权传回给呼叫此报表的程序. 这个错误只由

NewEra 传回.

 

 

 

-4431   延伸的报表参数的个数超过所允许的最大值.

 

此讯息不会藉由任何现有的 Informix 产品传回. 如果错误再度发生, 请记录所

有的情况并和 Informix 技术支持部门联系.

 

 

-4432   在 GROUP 子句的元素必须是 ORDER BY 子句的成员.

 

为了执行群组化, 选取的列集合必须在相同的字段中有次序地排列. 这是强迫所

有一起发现的相同值成为群组化的唯一方法. 重写此叙述使每个您想要群组的值

也出现在ORDER BY 子句. 注意这二个子句允许您藉由它们的位置值参考选取值.

就如下列的例子:

SELECT customer_num, month(order_date), avg(ship_weight)

                 FROM orders

                 ORDER BY 1,2

                 GROUP BY 1,2

 

 

-4433   使用在上面叙述的变量必须是 CHAR 或 VARCHAR 的型态.

 

在 REPORT TO 叙述中文件名必须有如字符值方式给定; 且在 REPORT TO PIPE

的叙述中程序名称必须也有如字符值给定. 不管那一方面, 这可能是常数, 或先

前提过型态的变量或表达式. 然而, 其可能不是数值或其他数据型态; 在这些叙

述中没有任何自动数据转换.

 

 

-4434   INFORMIX 4GL 展示版的限制已超过. 请通知 Informix Software, Inc.

        (415) 926-6300 以得到授权的信息.

 

使用 INFORMIX 4GL 展示版编译的程序, 只能保留一个不超过 150 叙述的模块.

此程序有太多的叙述或其引用另一个模块的叙述, 请和 Informix 联系取得完整

开发权限.

 

 

-4435   一个可接受连字符键格式是 CONTROL-X, 在此 X 是任何 A, D, H, L,

        R, 或 X 之外的字母.

 

当一个 ON  KEY 子句设陷接收到一个键时, 它失去其他特殊功能;  例如,  如

果您设陷接收 Escape 键, 您必须使用 OPTION 叙述来设定一个不同的 Accept

键. 您不可以使用控制键中 A, D, H, L, R 或 X 的任一个, 因为这些键有编辑

功能, 而且没有指配替代键这些功能的方法.

 

 

-4436   在一个叙述中有太多变量.

 

要 VALIDATE 或 INITIALIZE 在VAILIDATE 及INITIALIZE 叙述中有 250

个名称的限制 ( 从 4.0 版以后 ). 只要将此叙述分成多重叙述就不会超过此限制.

 

 

-4437   所有在 SELECT 列表的表格名称必须和在 FROM 子句中的表格名称相同.

 

使用在选取栏列表中之一的表格名称没有出现在 FROM 的子句.  或许您只是拼错

了一或二个地方中的一个名称, 或者您已经在选取-列表中使用表格别名, 但忘掉

在 FROM子句中定义它.

 

 

-4438   您无法 SELECT 进入字符变量的子字符串.

 

子字符串标记不允许出现在 INTO 子句. 您可以在选取栏清单中和在 WHERE 子句

中, 指定一 '栏' 子字符串, 但您必须选入整个变量. 定义要选入的变量, 并使用

LET 叙述将数据移动到目的子字符串.

 

 

-4439   您无法在 '记录' 的记录 SELECT 是因为元素名称是记录或是数组.

 

INTO 子句只能用在简单的变量. 星号或 THRU 标记的使用是为了列出所有记录的

组件字段的速记. 字段的结果列表必须包含简单的变量. 在此情况下, 域名

就不是简单了. 也许您已经引用了错误的记录, 如果不是的话, 您将必须分别列

出名称组件, 并指定其一个以上的组件部份.

 

 

-4440   在记录/对象中字段 name1 在 name2 之前, 而且在 THROUGH 速记中也

必须是这种顺序.

 

THROUGH 或 THRU 速记对以实体顺序出现在记录中的字段, 需要您给定开始及结

束字段, 检视名称的拼法. 如果它们是您想要的, 参考定义记录的 VARIABLE 叙

述, 看看为什么其没有照您所要的顺序出现. 这个错误只由 NewEra 传回.

 

 

 

-4448   无法开启档案的文件名供读取或撰写.

 

请核对文件名的拼法是否正确, 且您的账户具有读取或撰写该档案的存取权

限.

 

 

-4451   此函数/报表的 pcode 大小已经超过每个函数 32K 的限制.

 

此函数或报表必须简化. 撷取部份原始码至一个分开的函数或报表并呼叫它. 这个

错误只由 NewEra 传回.

 

 

 

-4452   此函数 (或报表) 名称已定义.

 

不同函数不能同时拥有相同名称. 不同报表不能同时拥有相同名称. 请改变其中

一个名称. 这个错误只由 NewEra 传回.

 

 

 

-4453   在您的程序中有过多的广域标识符和文字字符串.

 

(256K) 字节的表格保留给使用在主函数及广域和模块层次中的文字字符串及识别

字. 此表格亦保留给画面表格标识符, 窗口及光标. 要避免此错误, 可移动一些使用

很多文字字符串的原始码到不同的模块或函数. 或者, 找一个不用指配文字字符串

就可初始化字符变量的方法, 例如从数据库或档案中读取初始值, 减少广域和模

组变量的数量也有帮助.

 

 

 

-4454   在程序区块中有过多的局部标识符和文字字符串.

 

(256K) 字节的表格保留给使用在在目前函数中的文字字符串及标识符. 要避免此错

误, 可将函数分成二个以上的子函数, 或者找一个不用指配文字字符串就可初始化

字符变量的方法, 例如从数据库或档案中读取初始值. 这个错误只由 NewEra 传回.

 

 

-4458   数组的每一维必须介于 1 至 32767 之间.

 

数组维数不可以小于 1 或大于 32,767. 如果您需要一个大一点的数组, 您必须

将数组分成许多小数组, 或多维的数组.

 

 

-4475   "名称" 不能同时使用为函数 (或报表) 名称和标识符名称.

 

所显示的名称至少经二种方法定义: 在广域或模块层次的名称必须是唯一的, 找

出此名称所有定义和宣告, 保留一个其余的皆改变. 此错误只由 NewEra 传回.

 

 

 

 

-4476   记录成员无法使用在数据库字段子字符串, 也许拼错字或使用到尚未定义

        的主机变量.

 

此叙述有 name1.name2[...] 的参考型式. 这是您能引用字段子字符串型式:

table. column[...]. 然而因为名称不是数据库的表格或字段, 所以 4GL 假设它

们参考到纪录的字段. 检查此叙述并且决定所想要的: 字段或记录的参考. 如果

是字段参考的话, 确定数据库表格及字段的名称; 如果是纪录参考的话, 确定记

录及组件有适当的定义. 如果记录和表格有相同的名字, 在表格名称的前缀加上

@ 使其明白您指的是表格而不是记录.

 

 

-4479   警告:非 ANSI 批注指示器. 请使用 "--" 以与 ANSI 兼容.

 

如果您希望 SQL 叙述依循 ANSI 标准, 则必须使用二个连字符号组成的批注

分界符号 (- -). 数值记号 (#) 及大括号 ({ }) 批注分界符号不能在依循 ANSI

的系统上使用. 因为您想要的警告是由不依循 ANSI 的架构所发出, 所以会看

到这个讯息: 方法是 -ansi 指令-列参数, DBANSIWARN 环境变量, 或是在

informix.ini 檔中加上 DBANSIWARN 设定. 只有 NewEra 才会传回这个错误.

 

 

 

-4486   无法在报表标题或 trailer 上打印TEXT 或 BYTE变量和文字卷动栏

位.

 

4GL 必须能够预估报表的标题或 trailer使用的行数.  因为TEXT 变量的大小

是无法预估的, 你无法在上下文中加以显示.

 

 

-4486   无法在报表标题或 trailer 上打印TEXT 或 BYTE变量和文字卷动栏

位.

 

4GL 必须能够预估报表的标题或 trailer使用的行数.  因为TEXT 变量的大小

是无法预估的, 你无法在上下文中加以显示.

 

 

-4487   记录包含了变量型态 TEXT 或 BYTE 时, 不可能将参数和局部纪录定义

        混合. 请为局部纪录变量做第二个定义.

 

在此报表本体, 为报表参数及任何型态的局部变量使用分别的 DEFINE 叙述.

 

 

-4488   在此时程序无法 CONTINUE 或 EXIT '叙述-型态', 因为它没有直接的

        在 '叙述-型态' 的叙述内.

 

这 CONTINUE 或 EXIT 叙述并不适合. 或许叙述放置错误, 或许叙述的型态指定

错误.

 

 

-4489   以上的叙述在其表达式中不可以使用局部变量或报表参数.

 

此叙述不可以参考到函数自变量或定义在函数的变量, 它只能用定义在模块级的

变量 (在 MAIN 区段之前) 或定义在 GLOBALS 区段.对 OUTPUT REPORT TO 的

情况而言, 此叙述在 START REPORT 叙述执行时有效. 此时没有自变量传递给报表叙

述, 而且不会执行能初始化局部变量的报表描述叙述. 改变叙述使其参考到在报

表开始前就能初始化的变量.

 

 

-4489   以上的叙述在其表达式中不可以使用局部变量或报表参数.

 

此叙述不可以参考到函数自变量或定义在函数的变量, 它只能用定义在模块级的

变量 (在 MAIN 区段之前) 或定义在 GLOBALS 区段.对 OUTPUT REPORT TO 的

情况而言, 此叙述在 START REPORT 叙述执行时有效. 此时没有自变量传递给报表叙

述, 而且不会执行能初始化局部变量的报表描述叙述. 改变叙述使其参考到在报

表开始前就能初始化的变量.

 

 

-4500   数值转换发生错误, 因为呼叫程序和其函数参数不兼容, 或变量和其指配

        表达式不相容.

 

参阅代换此错误的错误 -1317 .

 

 

-4501   参数计数在呼叫函数及被呼叫函数间不符.

 

参阅代换此错误的错误 -1318 .

 

 

-4502   4GL 程序耗尽执行时期数据空间内存.

 

参阅代换此错误的错误 -1319 .

 

 

-4503   函数没有传回呼叫函数所想要的正确值个数.

 

参阅代换此错误的错误 -1320 .

 

 

-4504   执行 VALIDATE 指令时发生验证错误.

 

VALIDATE 变量的类型不能转换成验证的类型. 只有 NewEra 才会传回这个错

误.

 

 

 

-4505   报表输出文件无法开启.

 

参阅代换此错误的错误 -1322.

 

 

-4506   报表输出管道无法开启.

 

参阅代换此错误的错误 -1323.

 

 

-4507   报表输出文件无法写入.

 

参阅代换此错误的错误 -1324.

 

 

-4508   PRINT FILE 错误-无法开启档案 '文件名' 做读取.

 

参阅代换此错误的错误 -1325.

 

 

-4509   数组变量在其指定的数组范围外被参考.

 

超过数组边界, 且已开启数组边界检查. 可透过编译程序切换 "-a" 或

PRAGMA ARRAY BOUNDS 叙述, 来开启数组边界检查. 只有 NewEra 才会传

回这个错误.

 

 

 

-4510   插入叙述无法用来为报表所使用的暂时表格插入列.

 

参阅代换此错误的错误 -1327.

 

 

-4511   报表所需的暂时表格无法在选取的数据库内建立, 用户必须拥有存取权

        限才能建立表格.

 

参阅代换此错误的错误 -1328.

 

 

-4512   无法为报表所需的暂时数据库表格建立数据库索引.

 

参阅代换此错误的错误 -1329.

 

 

-4513   不正确地形成十六进制数值.

 

十六进制数字为 a 到 f 以及0 到 9 的范围. 您可能包含了一个不合法的字符,

而 NewEra 所期待的是一个十六进制的值或是它的记号.

 

 

-4514   无法在暂时报表表格中插入一列.

 

参阅代换此错误的错误 -1330.

 

 

-4515   无法从暂时报表表格中取得一列.

 

参阅代换此错误的错误 -1331.

 

 

-4516   字符变量参考超出下标范围.

 

参阅代换此错误的错误 -1332.

 

 

-4517   字符串长度 > 512 无法由函数呼叫传回.

 

参阅代换此错误的错误 -1333.

 

 

-4518   4GL 程序无法为暂时的字符串储存配置更多的空间.

 

程序试图从函数传回大于 32,768 字节的CHAR、VARCHAR 或 CHAR(*)

值, 或程序所隐匿建立的暂时 CHAR(*) 变量超过 32,768 位数. 只有

NewEra 才会传回这个错误.

 

 

 

-4527   在函数名称内有未定义的 opcode.

 

程序 (其档案字尾为 .4go) 的 p-code 档案已毁损. 至少将含有已命名的功能模

组重新编译 (最好是整个程序) , 并再执行一次. 若再次发生同样的错误, 请确

定您在相同的版本上, 执行 fglpc 和 fglgo . 若是同一版, 请参考数据库服务器

的管理指南, 附录 B"错误捕捉"以了解更多的诊断信息. 请向 Informix 技术

支持部门洽询诊断信息.

 

-4646   指定的 WORDWRAP RIGHT MARGIN 值超出范围.

 

它必须大于或等于目前的字段, 并小于或等于报表的右边界 (或具有

DIRECTION RIGHT TO LEFT 报表的左边界). 报表边界设定在报表 OUTPUT

部分.

 

-6000   尝试在一个没有开启的表格或数据库执行作业. 数据库尚未开启.

 

在程序存取数据以前, 必须先使用 dbselect() 函数选定一个数据库, 然后选一

个的表格. 重新检视程序逻辑看看这些呼叫为何无法执行.

 

 

-6001   数据库或表格不存在.

 

指定给此函数的表格或数据库不存在. 或许是名称错误, 选错数据库或资

料库已更改.

 

 

-6002   尝试开启一个以上的数据库.

 

程序连续二次呼叫 dbselect() 传递 DBOPEN 旗标. 程序必须在开启另一个数据

库以前藉由以 DBCLOSE 旗标呼叫 dbselect() 来关闭数据库.

 

 

-6004   没有数据库开启.

 

程序呼叫需要开启数据库的函数, 但没有任何数据库是开启的, 程序在呼叫此函

数前必须先呼叫 dbselect().

 

 

-6005   栏找不到.

 

至少有一个传递给此函数的栏名称不存在于同时传递给此函数的表格. 检视表格

名称和栏名称. 如果它们是正确的, 不是选取了错误的数据库, 就是数据库已改变.

 

 

-6006   表格名称没有开启.

 

传递给此函数的表格没有开启, 程序必须首先藉由 dbselect() 呼叫来开启表格.

 

 

-6007   字段或索引在目前的表格找不到.

 

传递给此函数的栏名在表格中不存在. 检视名称的拼法. 如果它们是正确的, 若

不是选取了错误的数据库, 就是数据库已改变.

 

 

-6008   表格名称没有开启.

 

dbselfield() 使用的表格必须首先藉由 dbselect() 呼叫来开启. 检视程序逻辑

确定是否完成.

 

 

-6009   表格中没有数据.

 

当呼叫空表格时, 这个指示会由 dbsefield() 或 dbfind() 传回, 用以显示表

格的状态, 而非程序有误.

 

 

-6010   值找不到.

 

以键入的搜寻条件呼叫 dbfind() 没有传回任何数据, 所要的值未在选取的索引

栏发现.

 

 

-6011   已在文件尾.

 

这个对 NEXT 列的 dbfind() 呼叫没有产生任何数据, 已经到达表格结尾.

 

 

-6012   已在档案起始处.

 

这个对 PRIOR 列的 dbfind() 呼叫没有产生任何数据, 已经到达表格起始处.

 

 

-6014   没有这种旗标值.

 

此函数的 '旗标' 参数不属于已定义的值. 当呼叫的函数须用到预先定义的旗

标值时, 您必须使用定义在 dbio.h 包含档中的名称; 而且您必须只能传递为此

特定函数所定义的旗标值.

 

 

-6015   表格名称没有开启.

 

指定的此函数表格名称必须首先藉由 dbselect() 呼叫来开启. 检视程序逻辑确

定是否完成.

 

 

-6016   没有设定概观档.

 

在呼叫 dbfind() 之前, 程序必须建立一个概观档, 也就是, 传回字段和接收缓

冲区规格. 由呼叫 dbsetview() 来完成. 检视程序逻辑确定是否完成.

 

 

-6017   索引定义为 UNIQUE 而无法加上一个重复值;

 

至少有一个给 dbadd() 的域值是已存在字段的重复值. 然而, 字段限制为唯一

值, 因而无法插入此列.

 

 

-6018   表格名称没有开启.

 

dbadd() 使用的表格必须首先藉由 dbselect 呼叫来开启. 检视程序逻辑确定是

否完成.

 

 

-6019   没有设定概观档.

 

在呼叫 dbadd() 之前, 程序必须建立一个概观档, 也就是, 传回字段和接收缓冲

区. 可由呼叫 dbsetview() 来完成. 检视程序逻辑确定是否完成.

 

 

-6020   没有现有的列.

 

dbdel() 和 dbupd() 函数正在 dbfind() 最后选取的列上作业. 检视程序逻辑看

看是否呼叫 dbfind() 建立一列. 如果是直接呼叫 dbfind() 的话, 因为传送

CURRENT 旗标会假设在前一次呼叫已选取了一列, 然而实际并非如此.

 

 

-6021   表格名称没有开启.

 

dbdel() 使用的表格必须首先藉由 dbselect 呼叫来开启. 检视程序逻辑确定是

否完成.

 

 

-6022   拒绝锁定

 

或许其他程序已经锁定表格, 程序必须稍等, 然后再尝试锁定一次. 如果此情

况继续存在的话, 程序必须回复其交易并重试整个作业.

 

 

-6023   表格名称没有开启.

 

dbluck() 或 dbunluck 使用的表格必须首先藉由 dbselect 呼叫来开启. 检视程

式逻辑确定是否完成.

 

 

-6024   内存配置错误,内存不足.

 

在特定作业时, 内存被配置以保留内部的数据结构. 在这个呼叫, 内存配置

失败. 这问题可藉由开较少的表格且/或建立较少字段的 dbview 结构来避免.

 

 

-6025   表格已经开启.

 

呼叫 dbselect() 传递了已经开启的表格名称, 而且表格持续开启着. 检视程序

逻辑看看是否制造多余的 dbselect() 呼叫.

 

 

-6026   指名的字段必须有索引或是选定顺序搜索方式.

 

呼叫 dbselfield() 时指名数据库中不具索引的字段, 但传递的旗标是

ACCKEYED. 确定指名正确的栏且开启正确的数据库和表格. 如果是那样的话, 索

引已移除必须在程序再次执行前重新建立.

 

 

-6027   无法在 NOT NULL 的字段中插入一个 NULL 值.

 

对 dbadd() 或 dbupdae() 的呼叫尝试插入一含有 null 值字段的列到限制为

not-null 字段. 这可能是因为程序使用 dbsetnull() 放置一个 null 值在到记

录缓冲区; 或是因为现有的概观档忽略一个限制为 not-null 值的字段. 此列无法

插入. 请重新检视表格的定义及程序逻辑并更改它, 使程序在增加或更新之前定

义值给所有 not-null 的字段.

 

 

-6028   表格名称没有开启.

 

dbupdate() 使用的表格首先必须藉由呼叫 dbselect 来开启. 检视程序逻辑看看

是否完成.

 

 

-6029   没有设定概观档.

 

在呼叫 dbupdate() 以前, 程序必须建立概观文件, 也就是, 要传回字段规格和接

收缓冲区, 这工作可藉呼叫 dbsetview() 来完成. 检视程序逻辑看看是否完成.

 

 

-6030   无法加上一个重复值; 索引定义为 UNIQUE.

 

至少有一个给 dbupdate() 的域值是已存在字段的重复值. 然而, 字段限制

只能有唯一值, 因而列无法插入.

 

 

-6031   使用者没有获得 SQL 的访问权限来 SELECT 指定字段.

 

目前执行程序的用户帐户在目前表格式或所选取之特定栏没有 SELECT 的权

限, 数据库的权限是藉由使用 SQL 叙述的 GRANT 来设定. 请由有 DBA 数据库权

限的使用者授予必要权限后, 再执行一次程序.

 

 

-6032   使用者没有获得 SQL 的访问权限来 INSERT 列到表格.

 

执行程序的用户帐户在目前的表格中没有 INSERT 的权限, 数据库的权限是藉

由使用 SQL 叙述的 GRANT 来设定. 请由有 DBA 数据库权限的用户授予必要权

限后, 再执行一次程序.

 

 

-6033   使用者没有获得 SQL 的访问权限来 UPDATE 指定字段.

 

执行程序的用户帐户在目前的表格中没有 UPDATE 的权限, 数据库的权限是藉

由使用 SQL 叙述的 GRANT 来设定. 请由有 DBA 数据库权限的用户授予必要权

限后, 再执行一次程序.

 

 

-6034   用户没有 SQL 的访问权限从表格中 DELETE 列.

 

执行程序的用户帐户时在目前的表格中没 DELETE 的权限, 数据库的权限是藉

由使用 SQL 叙述的 GRANT 来设定. 请由有 DBA 数据库权限的用户授予必要权

限后, 再执行一次程序.

 

 

-6035   没有目前的列.

 

传递给 dbfind() 的 '旗标' 参数包含有目前的列的意思 (例如, 相对于 FIRST

的旗标皆为 CURRENT 或 NEXT 的旗标; 然而, 先前的呼叫没有建立一个目前的

列. 检视程序逻辑并确定在此类型呼叫以前已经建立了目前的列.

 

 

-6036   别名和在数据库中已存在的表格名称相同.

 

传递给 dbalias() 的 '新名称' 参数在数据库中已经存在. 检视程序逻辑并修改

它确定只使用唯一的别名.

 

 

-6037   别名先前已经用过.

 

给 dbalias() 的 '新名称' 参数在先前的呼叫已经定义成别名. 在执行程序时

别名只能定义一次. 检视程序逻辑并修改它确定使用唯一的别名.

 

 

-6038   别名不可以是已存在别名的别名.

 

传递给 dbalias() 的 '旧名称' 参数在前一次呼叫定义成别名. 程序可能为表

格定义许多别名, 但不可能为一个别名再定义一个别名. 检视程序逻辑并更改它,

使得旧名称参数是数据库中真正表格的名称.

 

 

-6040   具别名的表格在数据库中未发现为表格名称.

 

传递给 dbalias() 的 '旧名称' 参数在目前的数据库中无法发现为表格名称, 检

查此参数值; 如果它是所要的, 或许目前的数据库是错误的, 或所想要的表格被

改名.

 

 

-6041   字段数大于在表格中的字段数.

 

传递给 dbnfield() 的 clonum 参数大于在同时传递给此函数的表格中之总字段

数. 如果程序在字段数从零往上不断重复, 此传回码即代表表格尾端的讯息, 否

则就会检查所传递的值; 如果它是所要的, 不管是现有的数据库错误或是表格

已改变.

 

 

-6042   传递给 dbprusing 的格式不正确.

 

无法接受传递给 dbprusing 的格式字符串. 请参考 INFORMIX-4GL 手册有关

REPORT 特性的描述验证所传递的值及检视 USING 函数规则.

 

 

-6043   字段不是一个合成键.

 

传递给 dbselfield() 的 '栏名称' 参数不是在指定表格的域名, 也不是

在表格中的合成索引名称. 检视 '表格名称' 和 '栏名称' 参数. 如果它们是

所期望的, 确定所选的是正确的数据库. 如果是所要的, 则索引可能移除或以不

同的名称建立.

 

 

-6044   字段数超过了合成键中的字段数.

 

这是一个内部错误. 若这错误再次发生, 请记下所有情况, 并且联络 Informix 技术

支持部门.

 

 

-6045   没有选定字段或索引.

 

假使没有使用索引, 在呼叫 dbfind() 之前此程序必须借着呼叫 dbselfield()

来建立撷取方式. 重新检视程序逻辑确定已完成处理.

 

 

-6050   不良的键描述: 内部的错误.

 

此错误不会传回. 最有可能的原因是在内存中某些 ALL 使用的内部数据

结构被覆写. 请检视程序逻辑. 当您确定程序无法储存于 ALL 数据内,

请记下所有情况, 并且联络 Informix 的部门.

 

 

-6052   并非所有合成的索引皆包含在此表格目前的概观文件中

 

当程序呼叫 dbselfield() 来设定合成索引时, 所有索引的 columns 必须包含

于由呼叫 dbsetfileview() 或 dbstructview() 所建立的概观档中. 检视程序逻

辑, 尤其是后两个函数的呼叫, 确定呼叫完成. 如果此概观档按照您的期望而设

定, 此合成索引可能已移除且使用不同字段来建立.

 

 

-6055   BEGIN WORK 失败.

 

如果此内部错误再次发生, 请记下所有的情况, 并且联络 Informix 技

术支持部门.

 

 

-6056   COMMIT WORK 失败.

 

如果此内部错误再次发生, 请记下所有的情况, 并且联络 Informix 技

术支持部门.

 

 

-6057   ROLLBACK WORK 失败.

 

如果此内部错误再次发生, 请记下所有的情况, 并且联络 Informix 技

术支持部门.

 

 

-6062   Dbsetfileview 无法在表格中允许有 null 字段时使用.

 

因为所建构缓冲区没有使用对齐 (allignment), 所以 dbsetfileview() 无法为

null 值的字段建立缓冲区.

 

 

-6063   NULL 指标参数.

 

此函数呼叫所用的参数应该包含一个内存指针, 而事实上是包含一个 C null

指标值( 0 ). 检视程序逻辑找出错误为何发生.

 

 

-6064   尝试结束未开始的交易.

 

当交易未生效时, 程序已呼叫 dbcommit() 或 dbrollback(). 可能是尚未呼叫

dbbegin() 来启动交易, 或交易已藉由呼叫 dbcommit(), dbrollback() 或

dbselect() 而结束. 检视程序逻辑看看这错误为何会发生.

 

 

-6065   数据库没有交易.

 

呼叫 dbbegin(),dbcommit() 或 dbrollback() 是不适当的, 因为目前的数据库

并不支援事务处理. 数据库可以转换成使用事务处理的数据库; 参阅您的数据库

服务器参考数据.

 

 

-6066   数据库服务器协议错误.

 

这是一个不该发生的内部错误. 若这错误再次发生, 请记下所有的情况, 并且联络

Informix 技术支持部门.

 

 

-6067   在交易内尝试解除表格锁定.

 

在交易内呼叫 dbunlock() 是错误的, 也就是发生在呼叫 dbbegin() 之后及呼叫

dbcommit() 或 dbrollback() 之前. 当进行事务处理时, 所有的锁定都必须保持

有效, 直到交易已确认或回复. 结束交易会自动释放所有的锁定.

 

 

-6068   数据类型未支援.

 

此 ALL 版本无法支持栏的数据类型; 例如 BYTE 数据类型. 比较实际表格检视所

需要的字段, 并且只使用数值或 CHAR 数据类型的字段.

 

 

-6069   在交易外尝试锁住表格.

 

当使用交易中的数据库时, 所有表格必须在交易范围内开启; 也就是在成功呼叫

dbbegin() 之后进行. 检视程序逻辑看看是否已经完成. 可能从最后一次使用程

式后, 交易登录已应用在数据库.

 

 

-6070   尝试在交易开启时关闭数据库.

 

在使用 dbselect() 关闭数据库以前, 程序必须结束目前的交易. 这可由呼叫

dbcommit() 或 dbrollback() 来做到.

 

 

-7202   所建立的数据库不具 NLS 功能.

 

您尝试在 non-NLS 数据库中建立 NCHAR (或 NVARCHAR) 字段, 或宣告 NCHAR

(或 NVARCHAR) 变数.

 

 

-7203   DBNLS 没有设定或 LC_COLLATE 必须设定范畴-值.

 

当您尝试使用与目前的数据库不同的区域化环境去存取外部的数据库时, 此讯息

会传回. 为了使用 NLS 数据库, 您必须设定 DBNLS 环境变量为 1 或 2, 且设

定 LC_COLLATE 环境变量为指定的范畴值.

 

 

-7204   LANG 或 LC_COLLATE 环境变量不正确.

 

LANG 或 LC_COLLATE 环境变量的设定不正确. 请以系统支持的值来设定其一或

两者的值.

 

 

-7205   DBNLS 没有设定或 LC_CTTYPE 必须设定为范畴-值.

 

当您尝试使用与目前的数据库不同的区域化环境去存取外部的数据库时, 此讯息

会传回.为了存取 NLS 数据库, 您必须设定 DBNLS 环境变量为 1 或 2, 且设定

LC_CTYPE 环境变量为指定的范畴-值.

 

 

-7206   LANG 或 LC_CTYPE 环境变量不正确.

 

LANG 或 LC_CTYPE 环境变量的设定不正确. 请以系统支持的值来设定其一或两

者的值.

 

 

-7207   LANG 或 LC_MONETARY 环境变量不正确.

 

LANG 或 LC_MONETARY 环境变量的设定不正确. 请以系统支持的值来设定

其一或两者的值.

 

 

-7208   LANG 或 LC_NUMERIC 环境变量不正确.

 

LANG 或 LC_NUMERIC 环境变量的设定不正确. 请以系统支持的值来设定其一或两

者的值.

 

 

-7209   LANG 或 LC_TIME 环境变量不正确.

 

LANG 或 LC_TIME 环境变量的设定不正确. 请以系统支持的值来设定其一或两

者的值.

 

 

-7210   服务器未具备 NLS 的能力.

 

当您尝试从 non-NLS 数据库服务器去存取 NLS 数据库时, 此讯息会传回. 此资

料库服务器不支持 NLS, 请与 Informix 联系要求具有 NLS 支持能力的版本.

 

 

-7211   无法参考外部的 NLS 数据库.

 

如果您目前的数据库不是 NLS 数据库, 您无法在其他的数据库服务器或相同的

数据库服务器存取 NLS 数据库. 然而, 如果正确地设定 NLS 环境变量, 即使您

目前的数据库不是 NLS 数据库, 您依然可以移除外部的 NLS 数据库.

 

 

-8001   TOP MARGIN,FIRST PAGE HEADER (PAGE HEADER),PAGE TRAILER

        和 BOTTOM MARGIN 所指定的新行数目必须为 ON EVERY RECORD

        子句的打印在每页留下足够的空间.

 

上述所有叙述定义的总行数超过页长度. 检视您是否已经在 OUTPUT 区段及

FORMAT 区段的页首尾格式的每个叙述中输入所想要的行数.

 

 

-8002   ACE 报表规格太复杂或太大, 以致于无法适当地编译. 需要执行此规格的

        指令数目大于编译程序配置给指令表格的空间.

 

缩减报表的大小. 因为无法将报表分成不同部份以分开编译, 所以您必须找到简化

报表的方法.

 

 

-8003   MALLINTEGER 常数不可大于 32767.

 

SMALLINT 值所允许的范围是 -32,767 到 32,767, 只有数字字符的值才允许.

 

 

-8004   不合法的 FLOAT 常数.

 

FLOAT 常数写法不正确. 指数也许太小或太大(指数所允许的范围视您的计算机和作

业系统而定, 但这和 DOUBLE 数据型态的 C 编译程序相同), 或是有不正确的标

点,或是有除了 "e" 以外的非数字字符.

 

 

-8005   定义太多的用户变量, 参数或函数. 所定义的数目不能超过 ACE 规格的

        '数目' .

 

 ASCII 字段的标识符, 参数和变量的总数不能超过所显示的个数, 您必须简化报表.

 

 

-8006   引号括住的字符串其长度不可以超过 80 字符.

 

您必须减少引号括住的字符串到 80 个字符. 在 PRINT 叙述内, 直接将字符串分成较

小的部份并且以逗号分开.

 

 

-8007   在引号括住的字符串中, 括号并不匹配.

 

报表规格行中包含奇数个引号 (") 符号. 引号括住的字符串不能包含新行, 所有引

号括住的字符串必须完整的在一行内. 若要打印一个长字符串, 将其部份储存在变量

中, 而且在PRINT 叙述中将它们全部列出来.

 

 

-8008   档案 '文件名' 无法开启, 要求操作系统开文件以利读入.

 

检视文件名的拼法, 确定档案已经存在, 而且您的账户名称对它有存取权. 如

果它所在的目录不是当前目录, 您必须输入完整的路径名称.

 

 

-8009   发生内存配置错误, ACE 报表规格可能太大.

 

ACE 编译程序无法配置所需的内存, 尝试减少报表规格的大小.

 

 

-8010   档案 '文件名' 无法开启, 要求操作系统开文件以利写入. 有相同档案

        名称的档案可能已经存在, 但使用者没有覆盖它的权限, 或若是已经使

        用-o 选项, 而目的目录不存在.

 

确定 '文件名' 都拼对, 并且您的账户在所要储存的目录上有写入权限. (那

个目录也许是在环境变量 DBTEMP 中有指名.) 如果那个名称的档案已经存在, 删

除档案或确定您的账户对它有写入权限.

 

 

-8011   用户函数呼叫的名称尚未被使用者定义.

 

有一个呼叫所示函数的作业. ACE 假设其是一个外部的 C 函数. 然而外部函数必

须在使用 FUNCTION '函数名称' 叙述的报表的 DEFINE 区段定义. 如果 '名称' 是

为外部函数名称, 则插入 FUNCTION 叙述.

 

 

-8013   在企图开启打印档 '文件名' 时发生错误, 要确定使用者在当前目录

        有写入权限.

 

确定您的账户在当前目录有写入权限, 且确定若档案 '文件名' 已经存在,

您的账户有此档案写入权限.

 

 

-8014   用法: SACEPREP [-q][-o output_directory] input_filename (etc.)

 

在指令列中 saceprep 无法接受您输入的指令. 请细读此讯息以明了多种选项

的语法, 然后重新键入指令列.

 

 

-8015   开启批注符号 "{" 在开启的批注中的行 '行数' , 字符 '字符数' 发现. 这

        可能是由于无法关闭先前开始于行 lnum, 字符 cnum 开启的批注.

 

您不可以使用巢状批注. 请在报表规格中适当的位置插入一个批注结束符号.

 

 

-8016   批注已开启但没有结束, 最后开始批注开启在行 '行数' , 字符 '字符数' .

 

在报表规格中适当的地方插入一个批注结束符号.

 

 

-8017   在行 '行数', 字符 '字符数' 中出现不合法 (不可见的, 控制的) 字符, 它

        将在列出时以空白代换, 但它依然在原始 (输入) 檔, 而且必须在重新编译

        前移除.

 

不合法的字符可藉由使用文字处理编辑器文件模式 (非本文模式) 时引进档案, 或

藉由编辑档案时敲下非打印键, 或因数据毁损产生.

 

 

-8018   在行 '行数', 字符 '字符数' 出现文法错误, 此上下文中的结构无法了解.

 

在源文件出现语法错误, 关键词可能拼错或在档案中放错位置. 检视关键词的

拼法或报表规格文件控制区块的次序.

 

 

-8019   无法开启暂时档 '文件名' 来读取一个 TEXT 字段.

 

ACEGO 提供一个在 DBTEMP 环境变量中指名的暂时文件, 给每个报表选取的 TEXT

字段. 此讯息显示档案已建立, 而且加载一份 TEXT 值, 但现在却无法读取.

请找寻操作系统更详细的错误讯息. 若这错误再次发生, 请记下所有的情况, 并且

联络 Informix 技术支持部门.

 

 

-8021   无法开启原始档 '文件名', 可能是因为这个档案不存在.

 

检查 '文件名' 的拼法是否正确. 同时检查报表规格文件是否在您现有目录中,

如果它是在另一个目录, 确定您已提供正确的路径名称. 如果这些事情都正确,

查验您的账户是否有此档案的读取权限.

 

 

-8022   此标识符您必须设定一个较短的标识符.超过标识符长度的最大限制 50

        个字.

 

您必须用较短的适别字.

 

 

-8025   即使没有任何批注打开仍在行 '行数' , 字符 '字符数' 发现批注关闭

        符号.

 

除非是包含在引号中, 否则批注符号必须对称. 可能是批注开始符号在编辑时意

外的删除. 更改档案内容使批注有适当的分界符号.

 

 

-8030   在行 '行数' , 字符 '字符数' 中发现打字上的错误.

 

在此位置出现的单一字符不合语法, 无法解译为报表规格的一部份.

 

 

-8033   源文件名称 '文件名' 超过最大长度 10 .

 

表面格式编译程序强制限定源文件标识符最大长度, 在使用以前您必须将档案

重新命名. 在 DOS 系统下, 文件名最多可以有 8 个字符, 加上一个 3 字符的

扩展名.

 

 

-8034   在指令列中发现未知的选项 '选项' .

 

由 ACEPREP 支持的指令列选项有:

*       -s 抑制讯息.

*       -o 指名输出目的地.

*       -ansi 测试 ANSI 兼容性.

ACEGO 支持的如下的指令列选项:

*       -s 抑制讯息.

*       -d 指名为数据库.

 

 

-8051   LEFT MARGIN 不能小于 0 且不能大于 RIGHT MARGIN.

 

修改 OUTPUT 区段中 MARGIN 叙述的右边和左边, 使其有合理的边界值.

 

 

-8052   在编译程序字符串表格中没有足够的空间可储存 CHAR 变量.

 

减少报表规格中字符变量的长度或数目.

 

 

-8053   PAGE LENGTH,TOP MARGIN 或 BOTTOM MARGIN 都不可以小于 0.

 

修改在 OUTPUT 区段中的叙述使其拥有合理的值.

 

 

-8054   编译程序字符串表格中的剩余空间容纳不下字符串 '字符串' .

 

减少报表规格中字符串的长度或数目, 相同字符串只储存一次.

 

 

-8055   此常数使得 ACEPREP 中的常数表格溢位.

 

减少在报表规格文件中使用的数字常数的数量.

 

 

-8056    WHILE 或 FOR 循环中的跳行不能包含在 PAGE HEADER 或 TRAILER.

 

ACEPREP 必须决定用于页首及页尾行数空间的大小 (否则它不知道一页能有多少

行). 而它不能预知一个循环将执行多少次, 因此在这些区段的循环中必须禁止

使用 SKIP 叙述.

 

 

-8057   只有CHARACTER 类型的用户变量才能在 LET 叙述中才能有下标或

        值序列.

 

您只可以对字符变量名称使用下标 (方括号中的两个数字, 是用来撷取字符中的

子字符串). 在一个 LET 叙述中您可以指配多重字符串给一个字符变量, 中间以逗点

分隔. 其他形式的变量只能接收单一值.

 

 

-8058   ASCII 字段 '字段的名称' 已经定义过了.

 

域名只能定义一次. 在 DEFINE 区段中的域名必须是唯一的; 也就是

说, 一个名称不能同时在一个 PARAM 和领域中使用.

 

 

-8059   已经超过巢状 IF 叙述的限制. 此规格有太多层的 IF 叙述, 使得ACE 无

        法适当的编译.

 

您已经超过了巢状 IF 叙述的最大层数限制, 必须简化报表的逻辑.

 

 

-8060   文件尾已经在报表规格中提早发现.

 

ACEPREP 仍然等待输入时遇到报表规格文件的结尾时, 您可能忽略了 END 叙述.

一个最小的 FORMAT 区段至少需包含一个 EVERY ROW 叙述, 且任一个控制区块至

少要有一个叙述在里头.

 

 

-8061   此报表包含一个 READ 叙述但是没有指定任何 ASCII 记录定义.

 

为了使用 READ 叙述, 您必须在 DEFINE 节区中使用 ASCII 叙述, 定义 ASCII

档所期待的字段.

 

 

-8062   此报表包含一个 SELECT 叙述, 但必须用 READ 叙述来代替, 因为已经指

        定一笔 ASCII 记录定义.

 

报表可以建立在 ASCII 档案或是数据库的列上, 但不能同时建立在两者上. 在

DEFINE 区段中的 ASCII 叙述意谓将使用档案输入, 而 READ 叙述是用来读取档

案.如果您想将报表建立在数据库的列上, 则保留 SELECT 叙述且将 ASCII 叙述

删除.

 

 

-8102   在 ORDER BY 指令下所指定的单一栏只允许使用一个 AFTER 或 BEFORE

        GROUP OF 子句.

 

对一特定的栏而言, 此报表包含一个以上 AFTER GROUP OF 子句或 BEFORE GROUP

OF 子句. 任一栏只能用到其中之一. 然而, 您可以结合多个子句叙述合并成单一

子句.

 

 

-8103   为了使 BEFORE 或 AFTER GROUP OF 子句能够适当的作用, 其中指定的栏

        位必须在 ORDER BY 命令指定为一排序字段. 如果这排序字段有下标, 此栏

        位在 BEFORE 或 AFTER GROUP OF 子句中也必须如此.

 

确定所有在 ORDER BY 叙述及 GROUP OF 子句的控制字段都有相同的指定.

 

 

-8104   群组累积只能在 AFTER GROUP OF 子句中使用.

 

在群组上的累积值会在处理群组行时累计, 因此只有在群组的结尾出现时才能使

用. 因此, 除非在 AFTER GROUP OF 子句下, 否则报表不能引用它们.

 

 

-8105   累积 (Aggregates) 不可以在另一个累积中使用. 累积也不可在另一个累

        积的WHERE子句中使用.

 

累积函数不可以是巢状的, 主要是因为内部累积的值在外部累积的值做累积时是

无法获知的. 改写累积表达式以只引用字段和简单的字段表达式. 在 AFTER

GROUP OF 子句中, 您可以将一群组列的累积值存入一个变数, 再和后续的群组做

累积运算.

 

 

-8107   用户定义用户变量或参数已经不只一次.

 

一个名称在 DEFINE 区段中只能定义一次. 在 ASCII,PARAM 或 VARIABLE 叙述

中, 您已经使用名称超过一次.

 

 

-8108   用户变量或参数的长度必须大于 0.

 

确定每个在 DEFINE 区段中的 CHAR 和 VARCHAR 字段都有非 0 长度的规格.

 

 

-8109   文字卷动不能用在 PAGE HEADERS 或 TRAILERS 中.

 

ACEPREP 必须知道后页头或页尾节区占有多少行 ( 否则它不知道该页有多少明

细列 ). 然而, 使用 WORDWRAP 函数打印, 可以视字数来填满变动的行数.因此,

在页头或页尾区段中是不允许的.

 

 

-8110   用户变量呼叫 '名称' 尚未定义.

 

变量, 参数或字段 '名称' 在 DEFINE 区段内尚未定义. 如果 '名称' 拼法正

确, 则就一定要定义.

 

 

-8111   用户变量及执行期间参数不能用在 ORDER BY 叙述中.

 

只有域名可以在 ORDER BY 子句中使用. 检视子句中域名的拼法或显示

卷标, 您不可以对已定义变量, 参数或 ASCII 字段的内容做排序.

 

 

-8112   在页头子句或页尾子句的 IF-THEN-ELSE 叙述中, 打印在 IF 部份的行数

        必须等于打印在 ELSE 部份的行数.

 

ACEPREP 必须知道有多少行将填入页首或页尾区段 ( 否则它就不会知道有多少行

该放进该页内 ). 因为它不能分辨 IF 叙述中那个部份将执行, 所以它需要二

个部份产生相同的输出行数.

 

 

-8113   SKIP TO TOP OF PAGE 在任何页头子句和页尾子句是不允许的.

 

当 SKIP TO TOP OF PAGE 执行时, 页尾子句, 必须执行(以显示固定的页尾数据),

然后执行页首子句. 如果允许此叙述在页首子句或页尾子句的话,就会发生无限

循环.

 

 

-8114   打印在上界和下界的行数加上打印在页首子句和页尾子句的行数超过或等

        于分页长度.

 

检视在 OUTPUT 区段及任何 HEADER 子句和 TRAILER 子句的叙述, 使用在这些

叙述的总行数必须小于可打印行的指定分页长度以留下足够的行数打印明细列.

 

 

-8115   ORDER BY 指令最多不能超过 8 个排序字段.

 

ACEGO 限定排序字段的数目, 您必须减少列在 ORDER BY 的栏数.

 

 

-8116   ORDER BY 指令中不合法的下标.

 

您只能在字符字段用下标. 请检查您的下标, 不能有负数; 这个数值必须在字符

字段的长度之内; 而且第一个数值必须小于或等于第二个数值.

 

 

-8121   指定的 WORDWRAP RIGHT MARGIN 值超出范围, 必须大于或等于

        现有的字段且小于或等于报表的右边界.

 

WORDWRAP 子句的右边界用来设定一比报表的整体边界还窄的边界. 当

WORDWRAP 处理时, WORDWRAP 显示的有效左边界就是现有的字段.

右边界必须落在现有的字段和报表边界之间.

 

 

-8122   NEED n LINE 不能在 PAGE HEADER 或 PAGE TRAILER 子句中使用.

 

页首和页尾的大小是由 PRINT 叙述来建立. 若要建立大一点的尺寸时, 则要使用

没有参数的 PRINT 叙述.

 

 

-8123   PRINT FILE 指令不允许在 FIRST PAGE HEADER, PAGE HEADER,

        PAGE TRAILER 等子句中出现.

 

ACEPREP 必须知道有多少行将填入页头和页尾的区段 ( 否则它将不知道有多少行

要放进该页内 ). 因为报表编译时档案的大小无法事先预测, 所以 PRINT FILE

指令是不允许的. 您必须使用 PRINT 叙述产生数据.

 

 

-8124   在以上查询中所使用的用户变量尚未定义在 DEFINE 区段.

 

指名于 SELECT 叙述中的变量尚未定义于报表中的 DEFINE 区段. 检视在

SELECT 中的名称是您所要的, 以及确定您没有拼错域名或变量名称.

 

 

-8125   关键词 END 在 SELECT 区段里出现不只一次. 在 SELECT 区段里, 使用

        分号来区分 SQL 叙述, 只有在最后的 SELECT 才使用关键词 END.

 

检视 SELECT 区段的内容, 确定在每个 SELECT 区段里除了最后一个是由 END

结束外, 其余的由分号来结尾. 可能是在区段开始时遗漏了 FORMAT 叙述.

 

 

-8126   PARAM[0] 也许尚未定义.

 

在 PARAMETER 叙述中您所能定义的第一个参数是 number 1. 在一些主机作业

系统中, 第 0 参数预设为程序名称, 但这个值是无法从报表中得到的.

 

 

-8127   您不可以在报表规格中使用超过一次以上的 REPORT TO 叙述.

 

整个报表导引至一个在 OUTPUT 区段中的 REPORT TO 叙述选取之目的地, 而报表

不可以分成多个目的地, 因此第一个 REPORT TO 之后的 所有 REPORT TO 叙述

必须移除. 如果您想要替不同的数据产生不同的报表文件, 您可以做以下任何一件事:

*       为不同的数据集合分别写不同的报表 ( 其规格只有在 SELECT 叙述中

        不同 ).

*       仅产生一个报表, 但不同数据集合分散在不同的分页, 并使用操作系统的

        公用程序来分开后来的档案.

*       在 SELECT 叙述使用参数变量, 如此您便可以在执行报表时动态地选取

        数据子集合. 并且使用 REPORT TO PRINT 可使您在启动报表前, 藉由

        DBPRINT 变量的设定, 来控制输出目的地.

 

 

-8128   VARCHAR 变量的最小长度必须要小于最大的尺寸.

 

VARCHAR 变量由二个数值来定义: name(n,r) 其中 n 是变量的最大长度, 而 r

是保留长度. 虽然在定义报表变量时, 保留长度是允许的, 但事实上保留长度只

有在数据库表格定义的上下文才有意义. 如果您执行它的话, 您必须写一个小于

等于 n 的 r 值.

 

 

-8129   指定页长度 '长度' 对默认报表而言太短.

 

报表页不能吻合指定的行数. 允许每页有更多行, 或改变报表规格而使用较少

行. 例如, 改变上界或下界.

 

 

-8130   一个 INTEGER 常数不可大于 2147483647.

 

这个叙述指定不能包含于整数的值. 应该使用较小值或不同的数据类型来表示,

例如, DECIMAL.

 

 

-9001   只有 CHARACTER 类型的字段可以有下标 (subscripted) 或不印出

        尾端空白.

 

可能是您对非字符变量用下标或运用 CLIPPED 函数, 或是您指定的变量有错误

的数据型态.

 

 

-9002   在 PMIM 中发现未知的作业码.

 

发生内部的 ACEGO 错误, 确定您的报表是由和 ACEGO

同等级版本的 ACEPREP

所编译的. 如果是这样的话, 请重新编译报表

以确定 .arc 档没有毁损. 若这错误再次

发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-9003   USING 格式字符串只可包含一个 '.'.

 

格式字符串指定一个以上小数点, 除了保留其中一个小数点以外, 其他小数点都要

移除. 参阅参考手册中 USING 函数的讨论.

 

 

-9004   栏 '名称' 不在现有的表格中, 或是用户变量 '名称' 尚未定义.

 

所显示的名称不可以和数据库表格中的字段或定义过的变量有关. 检查其拼法,

如果您是要定义成变量的话, 就将其加入 DEFINE 区段; 如果您指的是数据库中

一个字段, 检视表格是否已变更或其字段是否已更名.

 

 

-9014   用法: SACEGO [-q][-d 数据库] 报表文件名.

 

旗标:

        -q      SACEGO 将不会显示任何的讯息或错误

        -d      SACEGO 将使用 -d 选项之后的数据库名称, 而不使用报表

                规格的 DATABASE 区中指定的数据库名称.

当 ACEGO 未给定适当的指令列自变量时, 即会显示这项讯息. 如果显示其他的错误

讯息时, 您可以使用手册中所描述的 -s 选项来取代讯息中的 -q; 两者具有相同

的功能.

 

 

-9025   栏名称不在现有的表格中. 任何作为 ORDER BY 字段的栏必须在现有的表

        格中.

 

所示的名称出现在 ORDER BY 文字后面, 但它并不是栏的名称或是叙述中选定的

表达式之显示卷标.

 

 

-9046   报表输出文件 '文件名' 无法开启, 可能是由于访问权限的问题.

 

报表是导引至所显示的目的地, 不是靠 REPORT TO 的叙述, 就是透过 DBPRINT

环境变量内容来完成. 确定目的地的拼法是否正确, 确认您的账户是否拥有能够

写入目的地的操作系统访问权限, 并确定目的磁盘是可写入的而且尚未满载.

 

 

-9047   输出档 '文件名' 无法建立.

 

可能的原因是您的帐户在那个目录下没有写入权限, 或磁盘空间已满, 或是您已

经超过开启档案的限度.

 

 

-9048   管道 '管道规格' 无法开启.

 

报表是导引至 REPORT TO 叙述中所示的管道. 确定所有的程序名称都拼对; 程序

都存在; 且它们可以在现有的执行路径中找到. 从能找出问题来源的操作系统中

找寻其他的讯息 (例如: 讯息告诉您系统的内存不够了).

 

 

-9049   一个输入作为指令行参数的值无法转换成数据类型 '类型' .

 

指令列上的值, 定义成在 DEFINE 区段 PARAMETER 叙述一样有数据类型 '类型' ,

然而, 实际上指令列所给定的值无法转换成那种类型. 参阅以下的要点:

*       如果 '类型' 是数字的话,则参数便可当成数字.

*       如果 '类型' 是 MONEY 的话, 则参数依然不该包含货币符号.

*       如果 '类型' 是 CHARACTER 或 VARCHAR, 则参数长度不能超过变数所

        定义的长度.

*       如果 '类型' 是 DATETIME 的话, 则参数要正确地给予标点 (参阅使用者

        手册附录的 DATETIME和 INTERVAL 资料).

*       如果 '类型' 是 DATE 的话, 则参数要正确地标点为日期.

注意正确标点的 DATE, DATETIME 和 INTERVAL 的值包含了对操作系统有特殊

意义的字符. 问题可能出在参数是正确的但须有括号括住.

 

 

-9050   用户变量 '名称' 是 '类型' 类型. 输入值超过范围或者不能转成

        该类型.

 

输入的值响应 PROMPT 叙述, 然后存放在所示名称和类型的变量. 然而, 无法将

输入值转换成该变量的数据类型(参阅 错误讯息 -9049, 有关于类型转换的细

节). 重新执行此报表并输入适当的数据(也可考虑修改提示字符串, 使之更能指引

使用者)

 

 

-9051   ACE 程序中已定义参数的数目与指令列中传给 ACEGO 的实际参数

        数目不符.

 

DEFINE 区段中使用 PARAMETER 叙述定义的参数数目与指令列作为参数项目的数

目不一致. 检查包含空白或其他特殊字符的参数有包含在引号内, 缺少引号将造

成单一参数被误判为多个.

 

 

-9052   格式字符串太大. 不能大于 79 的字符.

 

USING 函式使用的格式字符串有大小限制.

 

 

-9053   .arc 档案内侦测到一未知输入. 使用SACEPREP重新编译 ACE 报表规格,

        然后再次执行 SACEGO. 确定 SACEPREP 和 SACEGO 的版本是一致的.

 

此版的 ACEPREP 和 ACEGO 必需一致. (欲检查两版的程序, 可从指令列使用-v

选项来执行.) 使用一个版本的编译程序 ACEPREP 重新编译, 以及同一版本的执

行者 ACEGO 来执行. 如果已经是这样的话, 再编译以确定 .ace 档案是否损毁.

若这错误再次发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-9054   此 ACE 报表由 A 版编译程序编译. 执行者只能执行 5 到 B. 使用

        SACEPREP重新编译您的 ACE 报表然后重新执行 SACEGO.

 

此版的 ACEPREP 和 ACEGO 必需一致.(欲检查两版的程序, 可从指令列使用-v

选项来执行. ) 使用一个版本的编译程序 ACEPREP 重新编译, 以及同一版本的

执行者 ACEGO 来执行. 如果已经是这样的话, 再编译以确定 . ace 档案是否损

毁. 若这错误再次发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-9055   已编译的报表档案 '文件名' 无法找到或开启.

 

此报表名称在 ACEGO 指令列中. 希望能在当前目录或 DBPATH 环境变量中指名

的路径找到 '文件名'.arc, 但是均无法找到或者开启. 检查文件名是否拼

错以及您的账号是否可以读取该档.

 

 

-9059   不是 ACE 报表中最后一个选择叙述的选择叙述必需将选取结果放入暂时

        表格中.

 

报表的 SELECT 区段可以包含超过一个的 SELECT 叙述. 然而只有最后一个叙述

可以产生报表内容的列. 任何先前的 SELECT 叙述均使用来准备数据放入暂时表

格以让最后叙述交给报表. 更改报表规格, 除了最后 SELECT 叙述, 均须包含

INTO TEMP 子句.

 

 

-9060   对 '名称' 标注下目标 m 和 n 值超过该栏定义长度的范围.

 

ORDER BY 子句中的栏之子字符串不正确. 当取用一栏的子字符串时, 括号中的第一

个数字指定此子字符串第一个字符的位置, 而第二个数字指定最后字符的位置. 两

者均至少为 1, 而且不能大于该栏或变量的总长度.

 

 

-9061   SELECT INTO 叙述不能当成 ACE 报表的最终执行的选择叙述.

 

报表的 SELECT 区段可以包含超过一个的 SELECT 叙述. 最后 (或唯一) 一个必

需产生报表内容的列. 任何先前的 SELECT 叙述均使用来准备数据放入暂时表格

以让最后叙述交给报表. 更改报表规格, 除了最后 SELECT 叙述, 均须包含

INTO TEMP 子句.

 

 

-9062   数值转换成 CHARACTER 型态的用户变量时有误. 此 CHARACTER 型态变

        数的长度不足以存放结果.

 

数值转换成字符产生多余的数字字符, 使得目的变量无法存放. ACEGO 以一错误

讯息来停止执行,而非截断此结果.. 您可以重新定义目的变量, 或者限定转换值

的大小, 例如使用 USING 格式字符串.

 

 

-9063   使用者定义在 ACE 的 DEFINE 叙述中的用户函数 '名称' 无法在使用

        者 C程序静态数据区的 C 函数定义表格 userfuncs 中找到.

 

报表的 DEFINE 区段中包含一指定外部函数 '名称' 的 FUNCTION 叙述, 将和报

表一起连接. (外部 C 函数连同 <pn product name>ACE 报表的使用和 PERFORM

屏幕包含在 ESQL/C 使用手册中. )然而每一个函数的名称和位置必需出现在名

为 userfuncs 的静态数组中. 此数组伴随外部函数的机器码和 ACEGO 用户自定义

版连接. 因为 '名称' 未出现在该数组, 因此ACEGO 无法呼叫它.

检查您是否执行正确的 ACEGO 用户自定义版(程序的原始版本没有链接外部函数).

检查看看是否名称拼错. 然后检验 C 函式的原始码以确定 userfuncs 数组定义

正确, 并可在其中找到该 '名称' .

 

 

-9064   执行时期的字符串表格已满. 无法配置更多的内存.

 

可存放暂时字符字符串的数据空间已满. 暂时字符串是在呼叫外部 C 函数和处理

USING, SPACE 和 ASCII 内建函数时建立. 减少这些使用情况.

 

 

-9065   内存配置错误.

 

ACEGO 无法配置内存空间以储存一列, 一行或一 SQL 数据结构. 所需空间不

是(如讯息本文所言)直接与报表规格的大小有关. 而是报表执行至多只缺几千位

元组.

 

 

-9066   写入输出报表发生错误.

 

报表目的地开启正确, 但当输出文件写入时, 操作系统发出错误讯息. 从作业系

统的说明中寻找错误讯息. 最普遍的错误是磁盘空间已满.

 

 

-9067   ACE 数学堆栈超过它的界限. 此表达式太复杂.

 

减低算术表达式的复杂度. 例如将表达式分成数个子表达式, 将每一

个值指定给一个变数.

 

 

-9068   在 SELECT 区段中发现一个不是 SELECT 叙述的 SQL 叙述. SELECT

        区段中只允许 SELECT 叙述或建立暂时表格的 SELECT 叙述.

 

可能是 SELECT 这个字在报表规格中拼错. 如果您写了其他的 SQL 叙述如

UPDATE 或 INSERT, 则删除之. 报表中只允许 SELECT 叙述. (您可以从报表中呼

叫一个 C 函式来执行其他 SQL 叙述. 用报表链接外部 C 函式在 ESQL/C 使用手

册中有讨论.)

 

 

-9070   一个 ASCII 输入文件的记录包含多于报表的 DEFINE ASCII 叙述所指定的

        数据字段.

 

一个 ASCII 檔中的 "字段" 是以分界字符结尾的一连串零到多个字符, (此分界符

号是在 READ 叙述中指定). 实际上, 每一个记录中的字段和界定符号一样多. 每

一个记录中的字段必需一样, 而且必需定义在报表 DEFINE 区段的 ASCII 叙述

中. 遗漏的字段不会有默认值. 参考讯息 -9072, 将会帮助您找出错误的记录.

 

 

-9071   一个 ASCII 输入文件的记录包含少于报表的 DEFINE ASCII 叙述所指定的

        数据字段.

 

一个 ASCII 檔中的"字段"是以分界字符结尾的一连串零到多个字符(此分界符号

是在 READ 叙述中指定). 实际上, 每一个记录中的字段和界定符号一样多. 每一

个记录中的字段必需一样, 而且必需定义在报表 DEFINE 区段的 ASCII 叙述中.

遗漏的字段没有默认值. 参考讯息 -9072, 将会帮助您找出错误的记录.

 

 

-9072   自 ASCII 输入档的 '计数' 记录已读进.

 

这是一个协助您查出 ASCII 输入文件问题所在的情报讯息. 在此档案的 '计数'

所在行中发现另一个讯息中所描述的问题.

 

 

-9140   欲于 '行号' 上零除. 此结果设为零.

 

此报表规格档案中的 '行号' 上的表达式包含一除法运算. 在报表执行的某处,

除数为零.检验表达式和所使用的数据, 让零除的情况不在报表中发生, 如在

IF 叙述中测试零. 此错误可能发生自在第一列数据未处理前就对一个已定义变量

引用一累积函数. 为避免此错误, 确定任何变量在使用前具有一个值, 例如从指

令列参数里或以 PROMPTFOR 叙述设定.

 

 

-9142   数据转换错误.

 

ACEGO 尝试转换字符型态数据为 DATE 型态并发现有误. 不是日期标点错误, 就

是有非数字字符存在, 或日期本身不协调, 如 "01/32/91" .

 

 

-9143   字符, 文字, 和字节数据不能以 '使用' 格式印出.

 

USING 函式只能用在数字数据. 修改报表规格.

 

 

-9500   下标式超过范围.

 

此叙述取用一字符变量的子字符串. 此子字符串值也就是中括号内的两数值不正确.

第一个数字小于零或超过此栏的长度, 或者第二项小于第一项. 更正此画面表格

规格并重新编译

 

 

-9503   不能开启 tablename 表格

 

检查表格名称是否并对. 如果是这样, 数据库中可能没有 tablename 表格(它可

能被删掉或改名了); 或如果是存在的, 您的账户可能对它没有 SELECT 存取权.

另一种可能情况, 是您若正在使用 INFORMIX - SE 数据库服务器, 可能已超过开

启档案的限度, 这会限制您可以在 SELECT 叙述中指名的表格数目. 在此情况下,

您可能要更改报表的 SELECT 区段部分, 以便使用更多的 SELECT 叙述, 而每个

叙述有较少的表格. 4.0 以后的版本不发出此讯息.

 

 

 

-9503   不能开启 tablename 表格

 

检查表格名称是否并对. 如果是这样, 数据库中可能没有 tablename 表格(它可

能被删掉或改名了); 或如果是存在的, 您的账户可能对它没有 SELECT 存取权.

另一种可能情况, 是您若正在使用 INFORMIX - SE 数据库服务器, 可能已超过开

启档案的限度, 这会限制您可以在 SELECT 叙述中指名的表格数目. 在此情况下,

您可能要更改报表的 SELECT 区段部分, 以便使用更多的 SELECT 叙述, 而每个

叙述有较少的表格. 4.0 以后的版本不发出此讯息.

 

 

 

-9504   自变量 '号码' 超过 ASCII 函数的范围. 自变量必需在 0 至 255 之间.

 

输入 ASCII 函数的自变量必需在 0 至 255 之间. 检查该报表规格的函数使用方

式. 如果一指令列参数产生不适当的值, 您可以考虑利用 IF 叙述来测试.

 

 

-16300  标识符太长.

 

此叙述的标识符太长. 看看是否忘了隔离两个标识符, 不然就另选一个较短的标识符.

 

 

-16301  发生一个语法错误.

 

除错程序指令侦测到一个语法错误. 检查是否拼错或忽略一个关键词或标识符,

或者包含一个多余的操作参数, 或关键词顺序错误. 看看是否 CALL 指令中的函

数名称之后少了括号, 或者 VIEW 指令中包含了括号. 您可以键入 help all 来

显示所有指令一份两页的概要.

 

 

-16302  指令列中发现一不合法字符.

 

除错程序指令列中的字符必需是字母, 数字, 空白, 底线, 和除错程序手册中"指

令列语法的规定"部分所列的特殊字符. 您可能在编辑档案时无意地按了一个键或

是编辑给READ 指令的输入文件时放入一个非法字符. 如果您使用一个文字处理器程

式来建立或更改一个 . 4db 档案, 确定以"非文件"或"纯文本"模式储存.

 

 

-16303  指令中找到一不合法的整数.

 

您的表达式或搜寻模式包含一超过 50 个字符的数字字符串. 使用较短的表达式或

搜寻模式再重复该指令.

 

 

-16304  指令中找到一不合法的浮点数.

 

您的表达式或搜寻模式包含一超过 50 个字符的浮点数字字符串, 或包含超过一个

小数点. 使用较短的表达式或搜寻模式, 或较少的小数点再重复该指令.

 

 

-16305  内存配置失败.

 

系统内存不足, 无法执行您的指令. 当其他用户对系统空间要求较少时, 再

执行此指令. 如果在 DOS 系统上, 您必需释放一些磁盘空间.

 

 

-16306  发现引号没有另一对应的引号.

 

您可能遗漏了一个名称或字符串的引号, 或包含了一个多余的引号. 是使用偶数个

单引号 (') 或双引号 (") 再重复该指令.

 

 

-16307  引号内的字符串太长.

 

引号内的字符串最大长度是 256 个字符. 使用较短的字符串重复该指令.

 

 

-16308  找不到函数名称.

 

您必需使用 CALL 指令指定一函数名称. 重复此指令, 指定跟随一组括号的函数

名称如果此函数需要自变量, 则将此自变量序列包含在括号内, 并用逗点分开.

 

 

-16309  超过内部缓冲空间限制.

 

您的指令有太多字符. 一除错程序指令不能超过 256 个字符. 如果您指定一个

ALIAS, BREAK 或 TRACE 指令, 而用大括号包含很多指令列,可考虑使用巢状别

名. 您可以使用别名来代表一长串不超过 256 个字符的键输入, 如此仅用一个功

能键或短字符串就能代替数以百计的键输入. 另一个方法是使用 READ 指令, 而不

使用别名, 来输入多个指令.

 

 

-16310  需要关键词.

 

您遗漏了一个必需的指令选项. 您可以输入 help all 显示所有除错程序指令的

名称, 或参考使用手册.

 

 

-16311  指令名称无法辨识.

 

您拼错或不适当地缩写该指令名称. 您可以输入 help 查看所有除错程序指令的

名称. 如果所显示的名称为一正确指令名称, 您可能在键入时按了无法印出的键.

 

 

-16312  等号(=)找不到或放错位置.

 

LET 指令总是需要一个等号 (=), 就如同没有星号选项的 ALIAS 也是. 重复该指

令, 确定您在适当的位置使用等号.

 

 

-16313  找不到模块行号.

 

在 BREAK 或 TRACE 指令中, 您指定了一个模块名称, 后面接着一个点号和一个

非整数值. 模块名称必需紧接一个点和一个整数行号.

 

 

-16314  找不到文件名.

 

如果除错程序已经加载, 则您尚未在 READ 指令后指定一文件名, 或在一指令

后将输出重新导向一档案. 重复此指令, 指定输入或输出档名. 如果在系统提示

中, 则您用 -F 指令列选项去启动除错程序, 但您未指定初始值档名称. 请重复

这个指令, 但此时省略 -F 或在 -F 之后指定 .4db 初始档名称.

 

 

-16315  找不到右括号 ).

 

不是您在操作参数中遗漏了右括号, 就是您包含一个多余的左括号.

 

 

-16316  需要一个小整数.

 

您必需提供一个正或负整数作为 GROW 指令的自变量. 重复此指令, 指定要加入视

窗大小的行数. 此整数和目前大小的和必需在 1 到 L-6 之间, L 是您的终端机

所能显示的行数(通常为 24).

 

 

-16317  需要程序变量名称.

 

一除错程序的 LET 指令需要三个自变量:     

*       程序变量的标识符

*       一个等号(=)

*       一个表达式, 其值将指配给变数

您输入的指令中, 标识符无法辨识.

 

 

-16318  需要正数或名称.

 

ENABLE, DISABLE, NOBREAK 和 NOTRACE 指令均需要一个自变量. 此自变量

可以是断点或追踪点的名称, 参考数, 函数名称, 或 ALL 选项. 如果指令窗口中,

您所输入的自变量看起来是正确的, 则您可能按了一个无法印出的键.

 

 

-16319  内部错误 - 不合法的指令.

 

该讯息反应一个发生在除错程序的指令剖析模块中的意料外情形. 若这错误再次发生,

请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-16320  找不到左大括号.

 

左右大括号字符 ({ and }) 必需成对使用.

 

 

-16321  别名 '别名-名称' 是一存在的指令关键词.

 

此别名的名称不能是除错程序指令的完整型式. (然而允许您设定指令关键词的缩

写为一别名.)重复此指令, 使用另一个别名标识符.

 

 

-16322  找不到目录列表.

 

您在呼叫除错程序时使用 -I 指令列选项, 但是您并没有指定源文件的搜寻路

径. 重复此指令, 不是删除 -I 选项就是指定一搜寻路径.

 

 

-16323  用户不能指定超过一个目录列表.

 

您只能在指令列上使用一次 -I 选项. 然而, 您可以在 -I 后的指令列中指定多个

搜寻路径. 重复此指令, 在 -I 选项后, 用逗点分开, 列出所有预期的原始档的

搜寻路径.

 

 

-16324  使用者不能指定一个以上的文件名.

 

您只能在指令列中使用一次 -F 选项. 重复该指令指定单一初始档案. 当除错程

式启始后, 您可以输入 READ 指令来执行更多的 . 4db 档案.

 

 

-16325  找不到或有多余的参数.

 

您遗漏或重复了一个指令列选项. 参阅

除错手册中 fgldb 指令的说明, 重复该指令.

此讯息也出现在您传参数给该程序时. 传指令列参数给目标程序的正确的

方法, 是在程序开始时便包含参数和执行指令.

 

 

-16326  找不到程序名称.

 

如果您在系统提示号下呼叫除错程序, 您必需包含一已编译的 4GL 程序作为引

数(或者在 UNIX 中使用 -V 选项指定您仅要显示软件版本). 重复该指令并指定

一个已编译程序的名称.

 

 

-16327  无法找到档案 '档案-名称' .

 

您可能遗漏或拼错 .4db 输入文件的文件名(在 READ 指令中或 -F 指令列选项之

后), 或者在 VIEW 指令或指令列中拼错 .4gl 原始文件的文件名或路径名称.

如果档名拼法正确而且存在, 则您必需指定一完整路径名称. 当指定的 .4db

或. 4gl 档案不存在于目前目录或任何 -I 指令列选项所指定的目录时, 您必需

指定完整路径名称.

 

 

-16328  无法读取初始化档案 '档案-名称' .

 

虽然除错程序找到您以 -F 参数指定的档案, 但读取该档时却遭遇错误. 检查

操作系统错误讯息以获得更多细节. 如果不是硬件错误, 请确定您的账号对于

该文件有读取权 (例如显示其内容).

 

 

-16329  路径名称太长.

 

除错程序最多接受 70 个字符的路径名称.

 

 

-16330  无法开启档案 '档案-名称' 以供读取.

 

确定您在 READ 或 VIEW 指令中, 或您从指令列呼叫除错程序时的 -F 选项之

后, 指定了正确的档名. 如果没有错误, 该档可能已损毁或防止读取. 如果不允

许您读取, 您应参考您的操作系统文件中有关访问权限的说明, 或联络您的系统

管理者.

 

 

-16331  太多递归别名.

 

在某些除错工作中, 参考其他别名的别名可以省时或避开除错程序指令列的字符

数目限制. 举例来说, 您可以指定别名 1 为别名 2 的子字符串, 而别名2 为别

名 3 的子字符串, 以此类推至别名5. 然而您不能在输入和指令完整的展开式间,

指定超过五层的别名.

 

 

-16332  重复函数名称 '函数-名称' .

 

在加载的模块中发现所示的函数名称. 然而, 该名称的函数可能于先前就已经在

加载模块中出现. 这是不允许的情况. 您必须变更应用程序, 使得应用程序中所

有函数的名称都是唯一的.

 

 

-16333  重复模块名称 '模块-名称' .

 

所示名称的模块正加载, 但此名称的模块已经加载过. 请使用程序设计师环

境的程序选单, 确定被除错的程序是仅由每个模块单一拷贝所组成.

 

 

-16334  内部错误 - 遭遇 null 关键词.

 

此讯息反应一个预期不可能会发生的情况. 若这错误再次发生, 请记下所有的情

况, 并且联络 Informix 技术支持部门.

 

 

-16335  窗口不能以指定的行数调整.

 

在原始窗口或指令窗口的最小行数为一 (1), 但没有算进显示目前模块名称的来源

窗口行. 在一个标准的 24 行终端机中, 每个窗口的最大行数为 18, 或者为

L-6 其中 L 为终端机支持的行数.

CROW 指令的自变量并不是指新的窗口大小, 而是目前窗口大小的增加量. 若您想要

变更在除错程序屏幕中的窗口大小, 请键入 GROW 指令, 以产生在此范围内的视

窗大小.

 

 

-16336  使用者必须指定要检视的源文件.

 

VIEW 指令需要 4GL 源文件名称.

 

 

-16337  没有先前的搜寻样式.

 

您无法在没有指定搜寻样式的情况下键入搜寻指令, 除非较早在相同的除错会期

内您已经指定搜寻样式. 请重复指令, 以指定一个正确的搜寻样式.

 

 

-16338  无法继续执行.

 

除非 4GL 程序已经开始 (但没有中止)执行, 否则您无法启动 CONTINUE 或 STEP

命令. 如果为正常中止或因为严重错误而中止时, 请使用 CALL 或 RUN. 在执行

开始时, 您必须在启动 CONTINUE 或 STEP 之前, 以断点来搁置执行 (或者, 在

UNIX 环境中, 使用插断指令). 请参阅在 Debugger 除错程序使用手册的 "作业

中的函数和变量" 部分.

 

 

-16339  中断或追踪名称 '名称' 不是唯一的.

 

您在 BREAK 或 TRACE 指令中所指配的断点或追踪点名称, 不能和任何已经出

现的参考点重复 (包含不能用的断点或追踪点). 若您读取相同输入档两次,

此讯息会在设定一个已指名的断点或追踪点 READ 指令后出现.

 

 

-16340  遭遇不合法的反斜杠.

 

您的指令包含一个无法解译为指令列连接符号的反斜杠. 以没有不合法的反斜杠

重复此指令.

 

 

-16341  行数 '行-数' 不在指定模块中.

 

您的 BREAK 或 TRACE 指令, 无法指定大于在指定模块中最后可执行叙述的行

数. 若您没有指定模块名称, 行数则不能大于在目前模块中最后可执行叙述的行

数. 请检查是否您已经指定正确的模块和行数.

 

 

-16342  内部错误 - 无法设定断点.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技

术支持部门.

 

 

-16343  指定的模块名称 '模块-名称' 不合法.

 

您指定了不是目前 4GL 程序部分的模块. 请检查名称上的拼法是否错误, 或把于

来自不同程序的函数或模块名称搞混了. 请重复此指令, 指定一个正确的名称.

 

 

-16344  指定的函数名称 '函数-名称' 不合法.

 

您指定了不是目前 4GL 程序部分的函数. 请检查是否有名称上的拼法错误, 或

把来自不同程序的函数或模块名称搞混了, 或是您忽略编译包含此函数的程序模

组. 请重复此指令, 指定一个正确的名称.

 

 

-16345  无法在 4GL 函数库函数或用户 C 函数内设定断点.

 

您只能在以 4GL 写成的函数设定断点, 而不能在以其他语言(例如 C 或

ESQL/C 等的语言)函数, 或是在内建函数名称内设定断点.

若想要在呼叫 C 函数时中止程序执行, 请以指定呼叫 C 函数的 4GL 叙述行号的

方式来设定断点, 而不要用指定函数名称的方式.

 

 

-16346  无法开启输出档案 '文件名' .

 

请查看是否输出档已经存在, 还是己经损坏或是有写保护措施. 在 UNIX 中, 请确

定您拥有访问权限, 可以在指定目录写入(或若您没有指定路径名称的话, 是否

可以写入当前目录中).

 

 

-16347  指定的断点或追踪点号码 '名称' 不合法.

 

您无法用零或负数, 或目前没有对应的断点或追踪点的值, 来指定在 ENABLE,

DISABLE, NOBREAK, 或 NOTRACE 指令中的参考号码. (您可以键入 list break

trace, 来显示您目前的参考号码.)

 

 

-16348  断点或追踪点名称不在作业中.

 

您要求 DISABLE 指令解除启动的是已经不能使用的断点. 请确定您指名的

断点是真正所要的名称. 您可以键入 list break trace, 来显示您目前的

断点和追踪点.

 

 

-16349  对断点使用不中断, 以及对追踪点使用不追踪.

 

您已对 NOTRACE 指令指定一个断点, 或是对 NOBREAK 指令指定一个追踪点.

每个指令只能处理它自己的对象.

 

 

-16350  断点/追踪点已经中止/启动, 或是无法决定

 

除错程序无法找到要完成您 ENABLE 或 DISABLE 指定所对应的断点或追踪点.

您可以键入 list break trace, 来显示所有您目前的参考点.

 

 

-16351  变量 '变量-名称' 无法定位.

 

除非变量在 4GL 模块内定义, 否则除错程序无法参考变量. 对 4GL 变数而言,

请确定您正确键入变量名称. 若变量不在目前函数或模块中, 您必须使其名称合

格. 请查阅除错程序使用手册中的 "参考范畴" 部分. (若在 BREAK 或 TRACE

指令内,您键入了希望作为模块名称的名称, 但您省略名称末尾的点, 这个讯息

可能就会出现.)

 

 

-16352  档案 '文件名' 已修改. (.4gl 较 .4go 为新)

 

除错程序执行 .4go 模块, 但是从 .4gl 源文件中显示行列. 因为源文件在

编译模块后, 就已经变更过. 在原始窗口内显示的行列, 可能无法对应在已编译

过程序的叙述.

若您在 .4gl 档中变更原始码, 您必须重新编译它. 若您的程序是由几个模块组

成的, 您也必须在开始除错前, 链接已编译过的模块. 亦请检查, 是否在此程序

中档案以 .4go 和 .4gi 字尾出现. 即使您的 .4go 档是正确的重新编译版本,

除错程序仍然会先解译 .4gi 版本.

 

 

-16353  当执行追踪点指令时, 可执行的指令不合法.

 

在 TRACE 指令的指令列列表中, 包含了 CALL, CONTINUE, RUN, 和 STEP 指令.

这些指令在 TRACE 指令内不支持.

 

 

-16354  函数 '函数-名称' 找不到.

 

您指定了一个不是目前 4GL 程序部分的函数. 请检查名称拼法是否错误, 或是把

来自不同程序的函数名称弄混了. 请确定您的 4GL 原始码所定义和呼叫的是您想

要执行的函数.

 

 

-16355  函数 '函数-名称' 需要参数.

 

在 CALL 指令中指名的函数, 定义有一或多个参数. 您必须在函数名称后的括号

内, 键入匹配的参数数目. 若您不确定什么参数应该传给函数, 您可以使用 VIEW

指令来显示原始码.

 

 

-16356  传给函数 '函数-名称' 的参数太多.

 

您在 CALL 指令中的自变量数目, 比函数所定义接收的参数还多. 若不确定应该有

多少参数要传至函数, 您可以使用 VIEW 指令显示函数的原始码.

 

 

-16357  函数 '函数-名称' 不是在作业中.

 

您只能显示在作业中函数内定义之变量. 此变量是在没有作业中的函数名称内定义.

 

 

-16358  期待的变量名称.

 

LET 指令需要变量名称以作为第一个自变量. 不要在名称前后放置引号.

 

 

-16359  无法为记录指配值;指配必须为记录成员.

 

LET 指令可以为简单变量, 或为记录指定成员指配值, 但不能为整个记录指配.

 

 

-16360  无法为数组指配值;指配必须为数组元素.

 

LET 指令可以为简单变量, 或为以在中括号内的下标指定的数组单一元素指配值.

键入 help let 可以查看范例.

 

 

-16361  不正确的变量名称 '变量-名称' .

 

'变量-名称' 标识符不是变量名称. VARIABLE 指令需要变量名称. 请检查名称

的拼法是否正确.

 

 

-16362  没有目前的函数.

 

如果您尚未启动 RUN 或 CALL 指令, 就没有目前的 4GL 函数. 即使是在 RUN 或

CALL 之后, 如果执行正常中止而不是由断点, 插断或 STEP 指令,或严重的错误

停止的话, 将不会有目前的函数. 请使用 RUN 或 CALL 来开始或重新启动程序的

执行.

 

 

-16363  在函数 '函数名称' 的变量不是在作业中.  

 

您所指名的变量, 其值是由尚未被呼叫的函数或已经传回的函数所指配值. LET

或 PRINT 指令只能参考作业中的变量; 也就是说, 在目前执行之函数中所指定的

广域或其他变量 (WHERE 指令所列出的函数). 当键入 CALL 指令时, 您必须用文

字值代替需要非作业中变量的表达式.

 

 

-16364  未知的选项 '选项'

 

除错程序无法识别您指令的自变量.   除错程序无法了解的是显示成 option 的定

义.请重复此指令,指定不同的 option. 键入 help turn 可以显示许多 TURN 的

选项.

 

 

-16365  断点或追踪点 '名称' 已经在作业中.

 

在断点或追踪点已经启动的情况下, ENABLE 指令是无效的. 请检查您所输入的

名称或您想要的参考号码. 如果是正确的, 而且您依然觉得此 '名称' 无法动作,

请使用 list break trace 找指令缓冲区, 看看是否先前的 DISABLE 指令关闭了

错误的断点或追踪点.

 

 

-16366  在尝试写入档案时发生错误.

 

可能是您的文件系统已满, 或是您的硬件发生错误. 请使用 Escape 功能以显示您

目前磁盘驱动器所剩余的空间.

 

 

-16367  需要指定特定记录成员或数组元素.

 

您无法将数组名当作 CALL 指令的自变量使用. 您无法在表达式中使用不合格的

数组或记录名称, 或作为断点或追踪点的对象. 在这些情况下, 您必须在中括

号中使用下标,来指定特定的数组元素, 或是记录成员的完整名称.

 

 

-16368  表达式包含来自不同函数的变量.

 

您不可以在相同的表达式中合并来自不同函数的变量. 如果您需要知道此表达式

的值, 您必须使用 PRINT , 个别运算来自每个函数的变量. 然后将此值输入成在

BREAK,LET, 或 PRINT 指令的常数, 来代换变量名称.

 

 

-16369  无法初始化应用装置 '装置-名称'

 

您必须指定其他终端机的名称, 而此终端机则与您启动除错程序的终端机,有相同

的 termcap 或 terminfo 项目. 第二个终端机必须以您的帐户名称登入.

 

 

-16370  没有指定应用装置.

 

您必须指定其他终端机的名称, 而此终端机则与您启动除错程序的终端机,有相同

的 termcap 或 terminfo 项目.(然而, 不能是您启动除错程序的装置名称. ) 从

您想要使用的应用设备的终端机输入 tty. 屏幕将显示其终端机的路径名称. 请

重复 APPLICATION DEVICE 指令, 以指定适当的终端机装置名称.

 

 

-16371  未指定读取的档案.

 

您必须在 READ 指令中指定. 4db 档的名称.

 

 

-16372  期待变数或表达式.

 

您必须识别您希望除错程序在 PRINT 指令中显示的样子. 请重复此指令, 指定变

数, 记录或数组, 或表达式的名称.

 

 

-16373  在执行开始前无法打印或指配.

 

在执行开始之前,您无法使用 LET 指令来指配变量值, 亦无法使用 DUMP 或

PRINT 指令来显示关于变量或函数的信息. 同样的限制也应用在执行正常结束以

后或 CLEANUP 指令以后. 请启动 RUN 或 CALL 指令以开始执行,并重复指令.

(有必要设定断点, 或在 UNIX 中按下插断键, 以避免正常中断. )

 

 

-16374  中断指令包含 'if' , 但没有指定条件句.

 

在 BREAK 指令中的关键词 IF 之后必须跟着表达式. 在条件句是错的 (零) 时,

断点是无效的. 请重复此指令而不使用 IF, 或同时有 IF 和条件句.

 

 

-16375  无法检视 C-library 函数 '函数-名称'    

 

VIEW 指令无法显示 C 函数或 ESQL/C 函数的原始码. 请检查 C 原始码, 您必须

使用 Escape 功能及操作系统中显示 C 原始文件的指令.

 

 

-16376  中断或追踪名称 name 不能以文字字符开始.

 

断点或追踪点名称的第一个字符必须是一个字母. 随后的字符可以是字母, 数

字或底线(_). 此名称必须包含于单引号 (') 或双引号 (") 之间. 请重复在引号

中指定正确名称的指令.

 

 

-16377  无法在执行开始前撷取广域变量值.

 

在执行开始之前, PRINT 指令无法显示广域程序变量. 请启动 RUN 或 CALL 指令

使执行开始, 重复 PRINT 指令. 并且在此情况下,您可指定常数或广域变数为

CALL 的自变量. (可能需要在正常结束以前设定断点或按下插断键以搁置程

式.)

 

 

-16378  期待小正整数.

 

您无法在没有自变量或是以负数为自变量的情况下, 键入 TIMEDELAY 指令. 请重复此

指令, 在原始窗口或指令窗口中指定零或正整数为延迟秒数.

 

 

-16381  无法设定断点或追踪点 - 没有目前的模块.

 

除非在原始窗口有程序模块, 否则您无法设定断点或追踪点而不参考模块或函

数. 当您无法加载 4GL 源文件时, 您可能忽略了出现的错误讯息.

 

 

-16382  脚本文件案 '档案-名称' 目前正在处理中.

 

您所使用的 READ 指令, 不管是巢状式地聚于初始化档案中或是在另一个 READ

指令的输入档案内, 可能有参考到下列其中状况:

*       本身.

*       先前输入档案的 READ 指令.

*       引用尚未完成执行的 .4db 初始化档案.

简言之, 您无法执行会造成无限循环的 READ 指令.

 

 

-16383  超过巢状读取指令的限制.

 

您启动的指令启动其他指令而超过十次的巢状 READ 指令, 您必须简化 .4db 指

令档案.

 

 

-16384  .4db 档案的列长度超过限制.

 

您不得在单一的除错程序指令列上, 使用超过 256 个字符. 如您使用分号(;)当

指令的分隔符, 则须将此行拆成数个指令.

在除错程序指令中的单一指令列的字符长度, 应该避免超出您的屏幕或列出装置

所能显示的范围. 请使用倒斜线连接符号将较长的指令列分成较短的段落, 或使

用别名.

 

 

-16385  呼叫函数 '函数-名称' 失败.

 

在 4GL 或 C 语言的函数中的逻辑有缺失,或是您在 CALL 指令中所指定的自变量清

单没有支持, 请使用 VIEW 指令来检查 4GL函数的原始码, 同时请使用 Escape

功能来检查 C 函数的源文件.

 

 

-16386  搜寻字符串的长度超过最大值.

 

在搜寻样式规格中, 若第一个字符是双引号时, 最大长度可为 80 个字符, 但第

一个字符为其他时, 则为 50 个字符. 请检查是否在无意间按下 SEARCH 指令键

(? 或 /). 请指定较小的样式再重复搜寻.

 

 

-16387  现在并不在执行此程序.

 

WHERE 指令在执行开始之后才能显示您作业中的函数. 请启动 RUN 或 CALL 指令

以开始执行, 然后重复此指令. (在正常结束之前设一断点来停止执行是必要的),

请参阅除错程序说明手册的 "Active Functions and Variables" 的部分.

 

 

-16388  无法建立除错程序窗口.

 

可能是内存用完. 请采取任何您的操作系统所准许增加可用内存空间的步骤.

 

 

-16389  文件名超过最大长度.

 

文件名不得超过 80 个字符. 但如果名称真的超过这长度, 而且此讯息不是因

为标点错误而出现时,您必须在使用除错程序前将名称加以更改.

 

 

-16390  读取档案 '文件名' 时发生错误.

 

除错程序尝试读取 4GL 源文件时遭遇错误. 请寻找其他讯息, 例如从操作系统

中, 可得到更多失败的细节. 请确定这个档案存在, 并且您亦拥有访问权限.

 

 

-16391  内部的错误 -- 尝试使不正确的行号变成反白.

 

请重复这指令, 当此错误再次发生, 请记下当时所有情况并联络 Informix 技术

支持部门.

 

 

-16392  没有指定数据库的名称.

 

数据库指令需要数据库名称作为其自变量.

 

 

-16393  表达式或变量中包含了不正确的子字符串.

 

除错程序无法解译字符值的子字符串的参考, 子字符串是由方括号中的两个数字指定,

如下列的表达式所示

charvalue[n1,n2]

在此处, 名称 charvalue 必须是 CHAR(n) 的类型, 其中 n1 指定子字符串的第一

个字符, 而 n2 则指定最后一个字符. 此错误的讯息出现的时机是在 n1 大于字

元值的长度 n, 或是 n1 大于 n2 时.

 

 

-16394  无法取得辅助说明的讯息.

 

除错程序的辅助说明讯息文件名为 fgldb.iem. INSTALL 程序会将这档案拷贝至

INFORMIXDIR 环境变量所指向的 msg 目录中. 这个档案可能已经损坏, 被删除

或被防止读取. 您可以要求系统管理者恢复您对该档案的访问权限.

 

 

-16395  无法比较 BLOBs 和其他值.

 

您要求除错程序在表达式中比较 TEXT 或 BYTE 变量. 而这种型态的变量是无法

比较的. (然而, 您可参考 TEXT 变量的子字符串).

 

 

-16396  无法在此表达式中使用 BLOBs.

 

您要求除错程序使用表达式中的 TEXT 或 BYTE 变量. 这种型态的变量只能用

DUMP或 PRINT 显示, 或是以 LET 将其值设为 null.

 

 

-16397  只能以 program= 变量打印 BLOB 变量.

 

在 PRINT 叙述中的 PROGRAM= 子句是用来指定能够显示 BYTE 或 TEXT 值的内容

之外部程序(例如编辑程序). 这子句和其他数据类型无关.

 

 

-16398  不合法的 BLOB 文件名. NULL 的名字是不准许的.

 

档案中的 BYTE 或 TEXT 变量被 4GL 的 LOCATE 叙述找到. 然而, 该变数所属的

文件名是 null 字符串, 所以该档案不存在, 除错程序也就不能做任何事.

 

 

-16399  没有指定程序名称.

 

PRINT 叙述中的 PROGRAM= 子句是用来指定能够显示 BYTE 或 TEXT 值的内容之

外部程序(例如编辑程序). 在此指令下关键词被指定但其后并无程序名称. 

 

 

-16400  不良的文件名 '名称' .

 

所示的文件名不适合原来的用意. 名称可能太长、或是包含不适当的特殊字

元、或是为 null. 请输入一合适的文件名.

 

 

-16401  没有加载程序

 

以 UNLOAD PROGRAM 指令卸除程序后, 没有以 LOAD PROGRAM 指令加载任何

的程序.

 

 

-21400  品牌: 序号 及/或 键不正确.

 

请检查您在安装时键入的序号和键是否与 keycard 上的相符. 重新启动安装或者

联络 Informix 技术支持部门, 以确认您的序号及键.

 

 

-21401  品牌: 无法开启档案 '--档案' 可能不在现有的目录.

 

档案可能并没有正确的从媒体传来, 请从媒体重载产品并重新安装. 若这错

误再次发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-21402  品牌: '档案' 的位置不正确.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-21403  品牌: '档案' 已被 branded.

 

有些产品的安装, 无法在不从媒体重载档案的方式下重新启动. 在执行安装

脚本前, 请从媒体中重载档案.

 

 

-21404  品牌: 标识符串在 '档案' 中重复出现.

 

如果此内部错误再度发生, 请记下当时所有情况并联络 Informix 技

术支持部门.

 

 

-21405  品牌: '档案' 中的序号长度错误.

 

如果此内部错误再度发生, 请记下当时所有情况并联络 Informix 技

术支持部门.

 

 

-21406  '程序' : 无法开启 '档案' .

 

档案可能没有藉由媒体正确地传输. 请从媒体中重载产品并重新安装. 若这

错误再次发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-21407  档案读取的错误.

 

档案可能没有藉由媒体正确地传输. 请从媒体中重载产品并重新安装,若这错

误再次发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-21408  档案写入错误.

 

这是一内部错误, 若这错误再次发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21410  verstamp: 无法建立 '档案' 的数据流.

 

如果此内部错误再度发生, 请再记录下当时所有情况并联络 Informix

技术支持部门.

 

 

-21411  verstamp: '档案' 中找不到标识符串.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21412  verstamp: 警告: 在 '档案' 中字符串出现 number 次.

 

这是一内部错误, 若这错误再次发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21413  无法开启 '档案' ; 系统错误码 '号码' .

 

档案可能没有藉由媒体正确地传输, 请从媒体中重载产品并重新安装. 若这

错误再次发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-21414  '档案' 中出现无法预期的 EOF.

 

档案可能没有藉由媒体正确地传输, 请从媒体中重载产品并重新安装. 若这

错误再次发生, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-21600  用法: mkmessages [-v] [-dMACRO] 输入档案 输出档案

 

这是一内部错误. 您在指令列上可能使用了错误的语法. 请检查讯息中指定

的用法并重新再尝试一次. 若这错误再次发生, 请记下所有的情况, 并且联络

Informix 技术支持部门.

 

 

-21601  原始文件和对象文件是相同的, '文件名' 会被覆写.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21602  输入档案无法开启.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21603  无法建立输出档案.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21604  错误的写入结果档案 '文件名' .

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21605  错误的写入输出档案 '文件名' .

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21606  在暂时文本文件中, 发生读取错误.

 

如果此内部错误再度发生, 请记录下当时所有情况并联络 Informix

技术支持部门.

 

 

-21607  错误的计算数目: number.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21608  您已超越了 8 个定义的限制. 多出的定义会忽略.

 

如果此内部错误再度发生, 请记录下当时所有情况并联络 Informix

技术支持部门.

 

 

-21609  在 line-number 行中出现不匹配的 ^ELSE.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21610  在 line-number 行中出现不匹配的 ^ENDIF.

 

如果此内部错误再度发生, 请记录下当时所有情况并联络 Informix

技术支持部门.

 

 

-21611  在 line-number 行中出现语法错误. 在 `^' 之后期待的是 ifdef ,

ifndef, else 或 endif.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21612  预料外的 EOF.   期待 ^endif.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21613  在 line-number 行中有语法的错误, 期待 ifdef,ifndef,else 或

endif.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21614  在 line-number 行后的 ^ifdef 或 ^ifndef 之后找不到期待的标识符.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21615  无法开启输出档案来读取/写入.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21616  无法建立暂时文本文件.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-21617  暂时文本文件无法开启用来读取/写入.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-22201  '变量-名称' 并非唯一记录组件.

 

记录中的名字已使用而且不是唯一的. 请更改记录变量的名字并重新尝试.

 

 

-22202  这预处理器不支持这特性.

 

INFORMIX-ESQL/COBOL 预处理器不支持这叙述所要求的特性, 请检查

INFORMIX-ESQL/COBOL 程序设计员使用手册, 以寻求这版本的预处理器

功能的信息.

 

 

-22203  在 PICTURE 子句中无效的关键词 '名称' .

 

在 PICTURE 子句中, 含有如错误讯息所示的无效关键词. 请检查 PICTURE 子句

变量宣告的语法, 并再重试.

 

 

-22204  COBOL 群组和 USAGE 子句矛盾(变量 OF 记录).

 

记录组件中的 USAGE 子句和该记录群组的 USAGE 子句不相符,用来做记录中

元素的 Usage 子句是从群组记录宣告继承来的,不匹配会造成错误.

 

 

-22205  COBOL 群组和 USAGE 子句矛盾(OF变量记录).

 

记录组件中的 SIGN 子句和该记录群组的 SIGN 子句不相符. 用来做记录中元素的

Sign 子句是从群组记录宣告继承来的,不匹配会造成错误.

 

 

-22206  内部的错误:错误的 COBOL 函数呼叫.

 

确定 CALL 的语法是正确的, 向 Informix 技术支持部门求助之前请验证数据是否

毁坏.

 

 

-22207  主机变量只可能是 01-49 或 77层级.

 

ESQL/COBOL 只支持层级 1 至 49 的COBOL变量和记录类型. 如果 COBOL 编译程

式加有支持的话, 尚可支持 77 层级的 COBOL 变量, 检查主机变量的层级并确定

它是有效.

 

 

-22208  主机变量不得为 USAGE INDEX.

 

为主机变量更改 USAGE 子句, 使其不是 USAGE IS INDEX, 并重试一次,

INFORMIX-ESQL/COBOL 不支援 USAGE INDEX.

 

 

-22209  在SQL对象的标识符, 光标名和叙述不得用连字符.

 

您必须更改标识符, 光标名和叙述, 使其不包括连字符.

 

 

-22210  重复之数据项 '变量-名称' 并无延伸.

 

ESQL/COBOL预处理器并没有延伸包含重复的数据项. 请更改记录并重试.

 

 

-22227  不合法的 COBOL 编译程序 '编译程序-名称' .

 

指定的编译程序不支持. 请检查 INFORMIX-ESQL/COBOL 程序设计师手册,

以得到支持此版本的编译程序信息.

 

 

-22229  主机对象 '变量-名称' 没有宣告.

 

存取指定的主机变量但没有宣告. 您必须在宣告区段中宣告主机变量, 然后

再试试看.

 

 

-22230  在主机符号 '变量-名称' 识别错误.

 

主机变量已经宣告超过一次. 请检查重复的变量宣告, 然后重新宣告其中一个变

数.

 

 

-22231  记录巢状极限已超过.

 

最大合法巢状记录层级数为 100. 请减少巢状记录的数目, 然后再试试看.

 

 

-22232  变量名称不是记录名称的附件.

 

变量名称不是记录组件的一部份. 请检查记录宣告和其组件, 以确认您是否正确

宣告此名称的变量.

 

 

-22233  '编译程序' 名称不允许数组元素以参数方法传递.

 

若您没有使用 RMCOBOL 85 编译程序或者 Micro-Focus COBOL/2 编译程序,

则您无法以参数方法传递数组元素. 请使用其中一个指定的编译程序, 或者重新

写入包含数组区段的程序代码.

 

 

-22234  使用者提供的缓冲区太小, 结果将截断以配合缓冲区.

 

使用在储存函数作业结果的缓冲区太小, 以致于无法保存整个结果. 将尽可能的

拷贝结果, 而多余的字符会截断. 请增加缓冲区宣告, 来使其可以保存更大的

字符串.

 

 

-22245  不合法的 BCD 类型 (rvalhlvar).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22246  内部错误:BDC 缓冲区太小 (rhlvarval).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22247  不合法的 BCD 类型 (rhlvarval).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22248  数据转换错误: rfmtdate 在 toadate 中

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22249  内部错误:不合法的整数大小 (toaint).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22250  BCD 缓冲区长度太小.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22251  错误发生在十进制转换 (frombcd: deccvasc).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22252  错误发生在十进制转换 (frompbcd: deccvasc).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22253  错误发生在 C 变量至值转换 (frombcd).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22254  日期类型变量大小太大.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22255  日期转换错误:rdefmtdate.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22256  错误发生在 C 变量至值转换 (fromadate).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22257  错误发生在 C 变量 (短整数) 至值转换.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22258  错误发生在 C 变量 (整数) 至值转换.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22259  错误发生在 C 变量 (长整数) 至值转换.   

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22260  内部错误:不合法的整数大小.

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22261  错误发生在十进制转换 (valtoasc: deccvasc).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22262  错误发生在十进制转换(valtoasc: dectoasc).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22263  内部错误:不合法的 C 类型(valtoasc).

 

如果此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技术支

援部门.

 

 

-22264  主机数据项必须不为文数字, 或数字编辑项目.

 

变更 PICTURE 子句的宣告为下列主机变量合法范畴:文字, 数字或文数字.

INFORMIX-ESQL/COBOL 没有支持文字或数字编辑项目.

 

 

-22265  有正负号子句指定给无正负号数字类型.

 

若您有 SIGN 子句, 但没有指定 "S", 造成编译程序无法处理数据类型. 请检查

变量为有正负号的, 还是无正负号的, 然后依照此来宣照.

 

 

-22266  '编译程序名称' 没有支持 ESQL/   '语言名称' 的类型.

 

指定给变量的类型, 使用的编译程序名称没有支持. 请检查编译程序文件,

以得到合法的类型宣告.

 

 

-22268  在 PICTURE 子句中的 P 没有执行.

 

目前, 在 PICTURE 子句中, INFORMIX-ESQL/COBOL 没有支援宣告 P

(十进制比例位置).

 

 

-22274  主机变量不能为 USAGE POINTER.

 

变更 USAGE 子句给主机变量, 使得主机变量不是指针, 然后再试试看.

 

 

-22275  内部错误:已经超过暂时缓冲区长度.

 

函数的字符串或缓冲区参数比内部缓冲区还长. 请变更字符串或缓冲区宣告, 使得字

串或缓冲区参数有较小的最大值.

 

 

-22276  不允许浮点变量.

 

编译程序不支持浮点数.

 

 

-22277  不合法的储存模式. 假定为字节储存模式.

 

Micro-Focus COBOL/2 对 USAGE COMP/BINARY 变量, 有字节或字组的

储存模式. 请检查目前储存模式. 设定 INFORMIXCOBSTORE 环境变量,

来指定字节或字组储存模式, 如同在 Informix Guideline to SOL: Reference

的第四章中所讨论的.

 

 

-22278  无法开启 COBOL 'whenever' '文件名' 的档案.

 

在 COBOL 暂时文件建立的目录已满 (通常为 /tmp 或在 DBTEMP 环境变量设定

时已经指定的任何东西). 没有空间来开启新档. 请检查此目录并释放出一些空间.

自 5.01版之后, DBTEMP 环境变量是由 INFORMIX-SE 数据库服务器使用, 但

不是由 INFORMIX- OnLine Dynamic Server 所使用.

 

 

-22279  无法开启 COBOL 暂时 '文件名' 的档案.

 

在 COBOL 暂时文件建立的目录已满 (通常为 /tmp 或在 DBTEMP 环境变量设定时已

经指定的任何东西). 没有空间开启新档. 请检查此目录并释放出一些空间. 自

5.01版之后, DBTEMP 环境变量是由 INFORMIX-SE 数据库服务器使用, 但不是由

INFORMIX- OnLine Dynamic Server所使用. 

 

 

-22280  行太长.

 

在 EXEC SQL 叙述中的 SQL 字符串太长, 以致于无法存在于内部缓冲区中. SQL 字

串长度最大值应小于 32767.

 

 

-22281  FILLER 变量只能在记录中当作字段来使用.

 

在 INFORMIX-ESQL/COBOL 中, FILLER 关键词必须识别所有 filler 项目.

Filler变量只能在记录中作字段来使用, 而且必须也有相关的 PIC 子句. 请检查

变量宣告, 并变更其名称.

 

 

-22282  不合法的数字数据长度

 

数据的长度和精密度太大或不正确. 长度不能大于 18, 而精密度不能大于长度.

 

 

-22283  从数据库来的值, 无法储存在 COBOL 数据项中.

 

在 INFORMIX-ESQL/COBOL 中, 下列情形可能造成此错误讯息的出现: 值太大,

或数据无法包含负值, 或有正负号值无法储存在无正负号数据项中, 或发生

浮点溢位.

 

 

-22284  在变数 '变量名称' 上有不合法的间接层级.

 

指针变量使用错误的间接层级数. 请检查在 ESQL 叙述中的间接层级.

 

 

-22285  在表格变量 '变量-名称' 上有不正确的维度.

 

在多维数组中的项目被非法存取. 多维数组中的索引在使用时必须指定. 例如,  

在 ESQL/COBOL 中宣告成01 VARA X(10) OCCUR 3 TIMES 的主机变量, 若在 SQL

叙述中以 INSERT INTO TAB VALUE ($VARA)使用, 将会传回错误. 因为您必须指定

想要插入的索引 (例如 VARA(1))

 

 

-22554  字段类型 '字段-类型-名称' 的使用超出上下文.

 

举例来说, 当 TYPE 字段类型在期待 COUNT 的地方使用时, 错误将会发生. 请

检查在 Informix Guide to SQL: Syntax 第一章中 ALLOCATE DESCRIPTO 和 GET

DESCRIPTOR 叙述内讨论的系统叙述指针域名的语法和用法. 有关系统叙述

指针区域的讨论, 请参阅您的嵌入语言产品手册.

 

 

-22555  '主机-变量' 类型与此字段预期的类型不匹配.

 

这是当变量预期会有某种类型, 但并未如此时所产生的错误. 例如,当从 TYPE 字段

指定或撷取值时, 只能是整数类型. 若变量类型不为整数, 会产生错误. 请检查在

Informix Guide to SQL: Syntax 第一章中 ALLOCATE DESCRIPTO 叙述内讨论的

系统叙述指针域名的语法和用法. 有关系统叙述指针区域的讨论, 请参阅您的

嵌入语言产品手册.

 

 

-22600  不合法的 SQL 类型 '类型名称' . 内部错误.

 

这是 INFORMIX-ESQL/FORTRAN 预处理器错误. 请检查符号数据类型. '类型名称'

必须为合法的 SQL 数据类型.

 

 

-22601  ESQL/FORTRAN 不支援 whenever raise.

 

您无法在 WHENEVER 叙述中指定 RAISE. 请删除叙述, 或用合法的选项取代.

 

 

-22602  ESQL/FORTRAN 不支援 whenever perform.

 

您无法在 WHENEVER 叙述中指定 PERFORM. 请删除叙述, 或用合法的选项取代.

 

 

-22617  不支援 STRUCTURE 宣告.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. STRUCTURE 叙述只能

包含在 VMS FORTRAN 延伸的 Green Hills and Sun 的 FORTRAN 版本支持.

 

 

-22618  不支援 RECORD 宣告.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. RECORD 叙述只能包含在

VMS FORTRAN 延伸的Green Hills and Sun 的 FORTRAN 版本支持.

 

 

-22619  不支援 UNION 宣告.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. UNION 叙述只能包含在

VMS FORTRAN 延伸的Green Hills and Sun 的 FORTRAN 版本支持.

 

 

-22620  主机对象 '主机变量' 没有宣告.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. SQL 叙述包含尚未

宣告的主机变量. 主机变量的宣告方式类似于其他的 FORTRAN 变量, 除了宣告

必须包含在一对 EXEC SQL BEGIN DECLARE SECTION 和 EXEC SQL

END DECLARE SECTION 叙述的宣告区块中. 您无法使用 SQL 数据类型来

宣告主机变量. 当您宣告主机变量时, 必须指定 FORTRAN 数据类型或

INFORMIX-ESQL/FORTRAN 数据类型的其中一个. 主机变量的数据类型,

应该反映其相对对的数据库栏的数据类型.

 

 

-22621  符号表格用尽内存. .

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. 预处理器无法

为符号表格配置更多的内存. 如有可能, 请减少同时在预处理器执行的

处理程序数, 或减少以您的 FORTRAN 程序定义的符号数.

 

 

-22622  未知的 '类型名称' 的类型.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. 该符号不是已宣告

的类型. 请宣告类型名称后再试试看.

 

 

-22623  数据类型长度必须大于零.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. 指定给数据类型的

长度小于零. 请设定数据类型的长度, 然后再试试看.

 

 

-22624  INTEGER 类型长度必须为 2 或 4.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. FORTRAN 主机

变量中类型 INTEGER 的变量, 必须以 INTEGER*2 或 INTEGER*4 来宣告.

请更正 INTEGER 宣告的长度, 然后再试试看.

 

 

-22625  REAL 类型长度必须为 4 或 8.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. REAL 类型的 FORTRAN

主机变量, 必须以 REAL*4 或 REAL*8 来宣告. 请更正 REAL 宣告的长度, 然后再

试试看.

 

 

-22626  空的 SQL 叙述.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. 在 SQL 叙述和在

FORTRAN 程序内嵌入的预先编译指令前, 必须加入关键词 EXEC SQL. 除了当您

在 PREPARE 叙述中指定一个多重叙述对象外, 不需要叙述中止符号.

 

 

-22628  记录组件 '组件-名称' 没有宣告.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. 请检视与此记录相关的

结构宣告. '组件-名称' 元素不以在结构宣告的类型存在.

 

 

-22635  INTERNAL ERROR. 已经超过暂时缓冲区长度.

 

这是个内部错误讯息. 若错误再次发生, 请记下所有的情况, 并且联络 Informix

技术支持部门 .

 

 

-22645  在数组变量上有不正确的维度. .

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. 符号不是数组变量,

或者维度不正确.

 

 

-22646  不正确的间接层级.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 错误讯息. 在您的数组中存取了不正确

的索引. 请检查您数组的使用. 请参阅错误讯息 -33203, 以得到在

INFORMIX-ESQL/C 中类似的讯息.

 

 

-22647  使用 ESQL/FORTRAN 不支持的非 SQL 叙述指标

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. 在 ESQL/FORTRAN

中,只有已经用 ALLOCATE DESCRIPTOR 叙述来配置的系统叙述指针区域,

可以在 DESCRIBE叙述中使用.

 

 

-22648  行太长.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. SQL 叙述太长(> 32K).

在标准 FORTRAN 格式中, 除了零以外, 任何在第 6 栏的非空格符为连接符号.

在 UNIX 形式的 FORTRAN 格式, 在第 1 栏的 '&' 为连续符号. 请缩短 SQL 叙述,

然后再试试看.

 

 

-22649  不符合的 END '叙述名称' 叙述.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. END STRUCTURE/UNION/MAP

没有对应的 STRUCTURE/UNION/MAP 叙述. 请确定每个 END STRUCTURE/UNION/MAP

叙述有相对应的 STRUCTURE/UNION/MAP, 然后再试试看.

 

 

-22650  END  '叙述-名称' 的叙述遗失.

 

此讯息是指 INFORMIX-ESQL/FORTRAN 预处理器错误. STRUCTURE/UNION/MAP

叙述没有对应的 STRUCTURE/UNION/MAP 叙述. 请确定每个 STRUCTURE/UNION/MAP

叙述有相对应的 STRUCTURE/UNION/MAP, 然后再试试看.

 

 

-23075  无法开启登录档.

 

ESQL 处理器无法在指令列上开启指定的登录档. 登录文件是指定在 -log 选项之后.

请检查您是否正确地指定登录档.

 

 

-23076  与 '-e' 选项不兼容的档案扩展名.

 

指定在 ESQL 处理器指令列上的 -e 选项, 其后有不兼容的档案扩展名.

请修改档案扩展名, 然后再试试看.

 

 

-23077  目标文件名称遗失.

 

指定在 ESQL 处理器指令列上的 -o 选项, 其后没有输出文件名. 请再度键入指

令并指定输出档.

 

 

 

-23078  与 '-c' 选项不兼容的档案扩展名.

 

指定在 ESQL 处理器指令列上的 -c 选项, 其后有不兼容的档案扩展名.

请修改档案扩展名, 然后再试试看.

 

 

-23079  登录档名遗失.

 

没有登录文件名指定在 ESQL 处理器指令列上的 -c 选项之后. 请再键入指令, 并指

定登录档案.

 

-23080  内存模式冲突.

 

在 ESQL 处理器的指令列上, 指定了一个以上的内存模式. 请尝试只指定一个

内存模式, 然后再试一次.

 

 

-23081  编译程序选项冲突.

 

在 ESQL 处理器的指令列上指定一个以上的编译程序选项. 请尝试只指定一个编译程序

选项, 然后再试一次.

 

 

-23082  列表文件名遗失.

 

在 ESQL 处理器的指令列上, 并没有指定列表文件名

给 -f 选项. 请再次键入指令,

并指定一个列表档.

 

 

-23083  应用程序选项冲突.

 

在 ESQL 处理器的指令列上指定了一个以上的应用程序的选项. 请尝试只指定一个

应用程序选项, 然后再试一次.

 

 

-23084  无法开启 ESQL 回复 '文件名' 的档案.

 

ESQL 处理器无法开启由指令列指定的 ESQL 回复档案.

 

 

-23085  无法配置内存.

 

ESQL 处理器无法以动态的方式配置内存.

 

 

-23086  无法衍生预处理器.

 

ESQL 处理器无法衍生预处理器.

 

 

-23087  没有原始文件或对象文件.

 

您没有在 ESQL 处理器的指令列上, 指定原始文件或对象文件. 请再度键入指令, 并

指定一个原始文件或对象文件.

 

 

-23088  窗口应用程序或 DLL 需要一个模块定义文件.

 

在 ESQL 处理器的指令列上没有指定模块定义文件. 请重新键入指令, 并指定一个

模块定义文件.

 

 

-23091  无法开启 '文件名' 的档案.

 

ESQL 处理器无法开启指定档. 请检查您是否已正确地指定此档.

 

 

-23092  无法衍生编译程序.

 

ESQL 处理器衍生编译程序.

 

 

-23093  无法衍生链接器.

 

ESQL 处理器衍生链接器.

 

 

-23094  无法衍生资源编译程序.

 

ESQL 处理器无法衍生资源编译程序.

 

 

-23095  无法建立暂时的档案.

 

ESQL 处理器无法建立暂时的档案. 请在指定的目录下, 删除以 "eq" 开头的

暂时档案.

 

 

-23096  指令列参数文件遗失.

 

ESQL 处理器没有指定指令列参数文件. 请指定一个指令列参数文件, 然后

再试一次.

 

 

-23097  参数太多.

 

在 ESQL 处理器的指令列上指定了过多的参数. 请再次键入指令, 并指定

较少的参数.

 

 

-23098  没有源文件.

 

在 ESQL 处理器的指令列上没有指定源文件. 请再次键入指令, 并指定

源文件.

 

 

-23099   '文件名' 中有不相容的文件格式.

 

指定的列表档或回复档案中, 有与 -ESQL 处理器不兼容的文件格式.

 

 

-23100  编译错误.

 

ESQL 处理器因为一或多个编译错误而中止处理.

 

 

-23101  无法加载区域化环境范畴.

 

在区域化环境初始化中, 提供了不正确的区域化名称. 区域化环境的环境变量

的值不正确. 请检查对应的环境变量 CLIENT_LOCALE 或 DB_LOCALE 值.

亦请检查 INFORMIXDIR 是否指向有安装 Informix 产品的有效目录.

如果客户端应用程序在要求连接数据库服务器时接收到此错误讯息, 请检查用

户端和数据库的区域化环境是否兼容. 只要在 lg_tr.codest@mod 服务器计算机

上的区域化环境是合法的, 就可兼容. lg_tr (代表语言和地域) 和 mod (区域化

环境修饰词) 是来自 CLIENT_LOCALE, 内码集是来自数据库区域化环境 (来自

DB_LOCALE的设定, 或是储存在数据库的设定).

 

 

-23102  在区域化环境处理期间的内存配置失败.

 

程序无法为内码集转换缓冲区或控制表格配置足够的内存. 只有客户端处理程序

才会传回此错误. 请在释放一些内存之后再重新执行此程序.

 

 

-23103  由于不合法的序列或不正确值, 而导致内码集转换功能失败.

 

在字符字符串中有不合法或不正确的字符. 程序无法在此字符串所包含的字符上执行

内码集转换.请重新检视这些不合法或不正确的字符, 并重新执行该程序.

 

 

-23104  开启所要的内码集转换对象档案错误.

 

在两个内码集中, 并没有内码集转换对象 (定义) 档案存在. 环境变量 DB_LOCALE

或 CLIENT_LOCALE 可能设定了错误的值, 使得错误的情况产生. 档案也可能遗失,

或是它们所包含的信息可能被修改. 请检查环境变量 CLIENT_LOCALE 或

DB_LOCALE 的值 .转换对象档案通常的延伸文件名为 .cvo .

 

 

-23105  现有的数据库引擎并不支持内码集转换.

 

数据库服务器中的内码集转换尚未完成. 请检查 CLIENT_LOCALE,

SERVER_LOCALE, 或 DB_LOCALE 环境变量的值.

 

 

-23106  内码集转换初始功能的自变量不正确.

 

一个不正确的自变量传送至内码集转换初始功能. 请检查您应用程序的逻辑.

 

 

-23107  DBLANG 和 CLIENT_LOCALE 环境变量不兼容.

 

DBLANG 是指出讯息储存位置的环境变量. 一般来说, DBLANG 的值与

CLIENT_LOCALE 的值是相同的. DBLANG 的值可以是 en_US.8859-1 , 或是

根据区域化环境定义的 X/Open 标准. 区域化环境是一组定义特殊语言 (例如法文

或日文), 特殊领域 (例如法国或日本) , 以及特殊内码集(例如 MS Windows Code

Page 1251 或 ISO 8859-1) 特征的档案. 在加拿大使用 ISO 8859-1 编码的法语

之区域化环境名称是 fr_CA.8859-1, 而使用 EUC (Extended Unix Code) 编码

的日语之区域化环境名称则是 ja_JP.ujis.

请重新检视环境变量DBLANG 和 CLIENT_LOCALE 的值.

 

 

-23190  系统中不允许有多位数据库名称.

 

在指定的环境中, SE 服务器不允许有多位的数据库名称. 请变更数据库的名称.

 

 

-23194  内码集转换回存失败.

 

数据库服务器无法将内码集转换表格回存为先前的状态. 没有足够的内存可以保留

表格信息. 请先释放一些内存, 然后再重新执行该程序.

 

 

-23195  重置区域化环境失败. 连接遭拒.

 

数据库服务器无法将数据库处理区域化环境变更为en_US.8859-1. 服务器拒绝连接.

服务器中没有足够的内存可以提供给新的区域化环境表格. 请先释放一些内存,

然后再重新执行该程序.

 

 

-23196  选定的数据库中有未知的区域化环境.

 

储存在选定的数据库的系统目录systable中的区域化环境信息与 DB_LOCALE

环境变量指定的值不符. 请检查 DB_LOCALE 的值. 如果此值是不正确的,

请移除此数据库, 并以正确的DB_LOCALE 值将其重新建立.

 

 

-23197  数据库区域化环境信息不符.

 

指定数据库的系统目录中的区域化环境信息 GL_CTYPE 或 GL_COLLATE , 与指定之

环境变量 DB_LOCALE 的区域化环境信息不符. 请检查 DB_LOCALE 的值.

 

 

-23198  GL_COLLATE 信息从系统目录中遗失.

 

区域化环境信息 GL_COLLATE 并没有存在于系统目录中. 系统信息目录 systables

可能遗失或是损坏. 请移除此数据库, 并以正确的DB_LOCALE 值将其重新建立.

 

 

-23199  GL_CTYPE 信息从系统目录中遗失.

 

区域化环境信息GL_CTYPE并没有存在于系统目录中. 系统信息目录 systables 可能

遗失或是损坏. 请移除此数据库, 并以正确的DB_LOCALE 值将其重新建立.

 

 

-25546  不合法的网络关联控制.

 

若此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技

术支持部门.

 

 

-25548  作业中连接过多.

 

若此内部错误再度发生. 若错误再度发生, 请记下所有的情况, 并且联络

Informix 技术支持部门.

 

 

-25553  找不到或无法开启 sqlhosts 檔.

 

sqlhosts 档被要求决定产生连接至本地或远程服务器的信息. 请依照您的数据库伺

服器产品的手册所描述的格式, 在 $INFORMIXDIR/etc 目录内建立 sqlhosts 文件.

 

 

-25554  INFORMIXSERVER 环境变量太长.

 

请检查服务器名称为小于或等于 18 个字符. 服务器名称必须以英文字母开头, 而

且必须全部小写. 它可以包含字母, 数字和底线. 从版本 6.0 开始, 服务器名称

可以用底线为开头.

 

 

-25555  服务器 '服务器-名称' 没有像在 sqlhosts 中的 dbserver 名称列示.

 

在现有的指令列中指定的数据库服务器, 没有列在 sqlhosts 檔中. 请检查服务器

名称以确保其正确性. 请检查所有要存取的数据库服务器, 都包含在 sqlhosts

檔中. 若您正在使用 INFORMIX-SE, 您的目前工作目录可能为 NFS-mounted 目

录. 请变更您的目前工作目录至本地目录, 或加入适当的本地目录至您的

DBPATH 中.

 

 

-25556  不正确的 sqlhosts 文件格式.

 

请检查在 $INFORMIXDIR/etc/sqlhosts 档案中的每个字段是正确的, 并且包含

支援的值.若您正在使用 INFORMIX-OnLine 活动服务器,请依 INFORMIX-

OnLine 活动服务器管理员指南的叙述,检查在 $ONCONFIG 组态档案中的

DBSERVERNAME、DBSERVERALIASES、和 NETTYPE 参数.若您正在使

用 INFORMIX-SE 数据库服务器,请检查 dbservername、nettype、主机名

和服务名称字段,以确定您已依照 INFORMIX-SE 管理员指南的叙述,键入正

确值.

 

对 ESQL/C 而言:如果您从 Windows 环境中的 ESQL/C 应用程序收到这项讯

息,请检查客户端计算机所定义的网络参数信息.有关参数的设定,请参阅

Microsoft Windows 环境下INFORMIX-ESQL/C Programmer's Supplement.

 

对 ESQL/COBOL 而言:如果您从 Windows 环境中 ESQL/COBOL 应用程序

收到这项讯息,请检查客户端计算机所定义的网络参数信息.有关参数的设定,

请参阅 Microsoft Windows 环境下INFORMIX-ESQL/COBOL Programmer's

Supplement.

 

 

-25557  网络内部错误.

 

若此内部错误再度发生, 请记下所有的情况, 并且联络 Inofrmix 技

术支持部门 .

 

 

-25558  NFS/RFS 主机 '主机-名称' 没有像列在 sqlhosts 之内的 dbserver 名称.

 

在目前指令中提及的数据库服务器存在于 NFS- 或 RFS-mounted 文件系统. 然

而, 没有任何 dbservername 的 NFS 或 RFS 主机项目, 是列在 sqlhosts 檔中.

请要求您的Informix 数据库管理员, 将项目加入至 sqlhosts 文件中. 若您正在使

用 INFORMIX-SE, 请确定有 sqlexecd daemon 在 NFS 或 RFS 主机上执行.

 

 

-25559  DBPATH 服务器 '服务器-名称' 没有像列在 sqlhosts 中的 dbserver 名称.

 

在您的 DBPATH 环境变量设定中指定的数据库服务器, 没有列在

$INFORMIXDIR/etc/sqlhosts 檔中. 请确定每个在 DBPATH 中提及的数据库伺服

器, 与在 sqlhosts 文件中的项目相同.

 

 

-25560  环境变量 INFORMIXSERVER 必须设定.

 

INFORMIXSERVER 环境变量必须指定一个默认数据库服务器. 请使用 C shell 中的

Setenv 指令, 或是在 Bourne shell 中的 Set 指令来设定 INFORMIXSERVER.

 

 

-25561  不合法的授权类型.

 

若此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技

术支持部门 .

 

 

-25565  无法得到处理程序信息.

 

若此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技

术支持部门 .

 

 

-25566  系统时间错误.

 

请查询系统管理员, 确定系统时钟设定正确.

 

 

-25567  侦测到内部通讯缓冲器管理错误.

 

内存毁损或错误的使用缓冲器管理例程通常引起此错误. 请检查在目前

处理空间内, 没有内存毁损的问题. 若错误再度发生, 请记下所有的情况, 并

且联络Informix 技术支持部门.

 

 

-25568  除错工具错误.

 

若此内部错误再度发生, 请记下所有的情况并洽询 Informix 技术支持部门.

 

 

-25570  网络驱动程序无法执行衍生系统呼叫.

 

系统呼叫失败. 请向 UNIX 系统管理员询问, 以得到协助.    

 

 

-25571  无法建立使用者处理线.

 

数据库服务器无法针对正试着连接的客户端, 建立或产生使用者处理线.

 

错误的可能原因和更正动作包括:

 

    *  数据库服务器目前无法针对用户处理线立即配置系统资源. 用户

       端可稍后再试着连接. 当其他客户端完成作业, 某些系统资源即可

       供使用. 检查用户是否为执行工具或程序的适当人选. 至于何人

       可使用工具的信息, 请参阅 Trusted Facility Manual或Administrator's

       Guide.

 

 

   *   不允许使用特定的客户端应用程序连接到数据库服务器的用户, 可

       试着使用工具来连接. 客户端应用程序包括 SQL API、 DB-Access

       以及所有的数据库服务器工具.

 

   *   要求全球语言支持的 (GLS) 结构失败. 请参考错误 -23100、 -23101、

       -23102、 -23104、 -23108 和 -23110的更正动作, 以便了解可能的解

       决方法.

 

   *   用户试图连接到不属于数据库服务器用户群组的数据库服务器, 该群组

       定义在 UNIX 系统上的 $INFORMIXDIR/dbssodir/seccfg 或在 Windows NT

       系统上注册的数据库服务器. 要确定用户属于可存取数据库服务器的使用

       者群组. 欲获得更多关于 DBSSO 用户的信息, 请参阅 Trusted Facility

        Manual或Administrator's Guide.

 

 

 

-25572  网络驱动程序无法将名称系结至埠.

 

系统呼叫失败. sqlexecd daemon 或数据库服务器无法存取 sqlhosts 档案中, 服

务名称指定的网络端口. 这个情况的发生, 可能是因为网络端口已被另一个

sqlexecd、数据库服务器或其他应用程序使用. 在指令列 (6.0 之前的版本) 或

在 sqlhosts 檔 (6.0 版开始), 使用不同的服务名称. 请洽询系统管理员寻求协

助.

 

 

-25573  网络驱动程序无法接受在端口的连结.

 

系统呼叫失败. 请向 UNIX 系统管理员查询以得到协助.      

 

 

-25574  网络驱动程序无法开启网络装置.

 

系统呼叫失败. 请向 UNIX 系统管理员查询以得到协助.      

 

 

-25575  网络驱动程序无法配置呼叫结构.

 

系统呼叫失败. 请向 UNIX 系统管理员查询以得到协助.      

 

 

-25576  网络驱动程序无法配置传回结构.

 

系统呼叫失败. 请向 UNIX 系统管理员查询以得到协助.      

 

 

-25577  网络驱动程序无法得到主机结构.

 

系统呼叫失败. 请向 UNIX 系统管理员查询以得到协助.      

 

 

-25578  网络驱动程序无法从网络停止连接.

 

系统呼叫失败. 请向 UNIX 系统管理员查询以得到协助.      

 

 

-25579  网络功能以错误的次序送出.

 

若此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技

术支持部门 .

 

 

-25580  在网络功能函数中发生系统错误.

 

系统呼叫失败. 请向 UNIX 系统管理员查询以得到协助.      

 

 

-25581  传输层内存释放失败.

 

此讯息指出这是系统问题. 可能在释放内存时产生问题. 您可以重试连接,

然后寻找 UNIX 系统管理员以得到协助.

 

 

-25582  网络连接中断.

 

此错误指出数据库服务器已经中止, 或可能网络本身有问题. 请检查以确定网络

功能正常, 以及服务器是否仍在执行中.

 

 

-25583  未知的网络错误.

 

请向 UNIX 系统管理员或网络管理员查询, 以得到协助.

 

 

-25584  网络驱动程序无法存取服务器程序 '程序名称' .

 

请检查默认服务器名称, 在 INFORMIXSERVER 环境变量中所指定的默认服务器名

称是正确的, 以及在 sqlhosts 档内的默认服务器和服务名称项目也是正确的.

 

 

-25585  不正确的缓冲区大小.

 

在服务名称栏内指定的缓冲区大小不正确. 请检查您的 sqlhosts 档的服务名称栏

是正确的.

 

 

-25586  网络传送失败.

 

系统呼叫失败. 请向您的 UNIX 系统管理员查询以获得协助.

 

 

-25587  网络接收失败.

 

系统呼叫失败. 请执行 DISCONNECT , 然后检查服务器的情况.

请向您的 UNIX 系统管

理员查询以获得协助.

 

 

-25588  appl 处理程序无法连接到 OnLine 服务器 '服务器名称' .

 

应用程序中的错误可能产生这个讯息. 请检查您的 CONNECT 叙述和 sqlhosts 档案.

此讯息误也可能是系统失败产生. 若无法立即发现原因, 请记下情况并询问您的

OnLine 数据库管理员, 以获得协助.

共享内存通讯子系统停机或不能运作. 请联络您的 OnLine 数据库管理员,

并报告此问题.

 

 

-25589  不正确的 OnLine 服务器信箱讯息类型.

 

系统呼叫失败. 请向 UNIX 系统管理员查询, 以得到协助.

 

 

-25590  认证错误.

 

这个错误表示用了不正确的用户 ID 或密码, 来连接数据库服务器. 重新定义

正确的用户 ID 和密码.

 

若 SCM 选项在数据库服务器这端启用, 却在客户端应用程序那端停用, 这个

错误亦会发生, 反之亦然. 若希望使用 CSM, 要确定已针对数据库服务器和用

户端应用程序在 sqlhosts 档案设定 CMD 选项.

 

 

-25591  传输控制接收到不正确的连接地址.

 

请检查想要的数据库服务器, 在 $INFORMIXDIR/etc/sqlhosts 中的主机名和服务

名称项目. 可向 DBA 和 UNIX 系统管理员确认主机名和服务名称的正确拼法.

若使用 TCP/IP, 亦要确认在客户端计算机上的 /etc/hosts 和 /etc/services 檔

案中, 主机名和服务名称有对应的项目.

 

 

-25592  网络驱动程序不支持通讯服务.

 

此连接所要求的网络服务, 如有socket的 TCP 或有 TLI 的 TCP, 在所要的系统或

指定的数据库服务器上不能使用. 请使用支持的网络服务;确认在

$INFORMIXDIR/etc/sqlhosts 中, nettype 字段正确指定想要的数据库服务器. 若

只在系统上提供网络服务, 但在数据库服务器上却不提供的话, 请要求您的 DBA,

以在初始化数据库服务器时开启服务.

 

 

-25593  网络 listener 无法使开启的输入/输出信道为非阻断模式.

 

请将此问题报告给操作系统管理员. 可能会需要系统重新启动.

 

 

-25594  共享内存客户端在警告 OnLine 服务器有关服务时失败.

 

这问题通常是因为内存的毁损, 或者操作系统不能执行旗号作业. 请向

OnLine 数据库管理员报告此问题. DBA 可能必须要重新开启 INFORMIX-OnLine

Dynamic Server, 或者执行整个操作系统的重新启动.

 

 

-25595  在尝试连接期间接收到不正确的讯息.

 

连接到想要的数据库服务器时发生错误. 若使用 INFORMIX-OnLine Dynamic

Server, 请确定数据库仍在在线. 若使用 INFORMIX-SE 数据库服务器, 请确认

sqlexecd daemon 数据库服务器仍在执行. 并且确认数据库服务器的

$INFORMIXDIR/etc/sqlhosts 档案输入项正确. 若错误再次发生, 请记下所有的

情况, 并且联络 Informix 技术支持部门.

 

 

-25596  INFORMIXSERVER 值未列在 sqlhosts 档案或 Registry 中.

 

INFORMIXSERVER 环境变量指定的默认数据库服务器名称, 必须在UNIX上

$INFORMIXDIR/etc/sqlhosts 档案中或Windows上的 registry是正确的数据库伺服

器名称. 检查指定的服务器已列在 sqlhosts 档案中或registry中.

 

 

-25597  系统管道处理错误.

 

此系统失败可能指出在存取环境变量时有问题. 请记下系统错误码, 然后向作业

系统管理员询问, 以得到帮助.

 

 

-25598  通讯使用方法错误:不合法的状态转变.

 

若此内部错误再度发生, 请记下所有的情况, 并且联络 Informix 技

术支持部门

 

 

-25599  网络连接错误 - 没有 listener.

 

客户端应用程序尝试连接到远程服务器. 然而, 远程主机上并没有执行的

listener daemon. 请检查在远程主机上已开启listener daemon, 然后重新尝试

连接.

 

 

-25600  转置模块无法得到环境变量 SQLRM. 系统错误 '错误-码' .

 

请向您的系统管理员查询, 以检查这个系统的问题.

 

 

-25601  这个转置模块无法为另一协议执行转置模块 '模块名称' .

 

请确认指名的转置模块已安装在您的系统上.

 

 

-25602  本地数据库 '服务器名称' 的服务器无法由转置模块所衍生. 系统错误码.

 

请向您的系统管理员查询, 找出这个系统的问题.

 

 

-25603  在连接到数据库前, 尝试准备了一个以上的叙述.

 

请检查您的应用程序, 并确定您在连接到数据库前, 只准备 CREATE DATABASE,

START DATABASE, 或 DROP DATABASE 的其中一个叙述.

 

 

-25604  数据库名称语法和叙述中的选项冲突.

 

请检查您的应用程序, 以确定您的数据库语法是依照叙述使用了正确的选项.

 

 

-25605  SQLEXEC必须设定用转置模块建立本地数据库.

 

请检查您已经设定 SQLEXEC 环境变量到本地的 INFORMIX-SE 数据库服务器

(数据库服务器版本为 6.0 以前的版本).

 

 

-25606  在本地机器上的数据库服务器中, 有未知的产品标识符串.

 

请检查您已经安装 INFORMIX-SE 数据库服务器, 或者是 INFORMIX-OnLine

Dynamic Server.

 

 

-25607  未支持止叙述, 尚未选取数据库.

 

您送出一个需要已开启数据库的 SQL 叙述, 但您没有选取数据库. 请选择

想要的数据库, 然后重试此叙述.

 

 

-25701  您没有存取指定主机表格的权限.

 

您没有存取指定主机表格的权限. 可能是您的 Answer/Extractor 配置文件名称不

正确, 或是主机表格词汇过期. 请检查您在 SETUP 屏幕上的 Answer/DB 配置文件名

称参数是否正确. 若正确的话, 请重新整理您的主机表格词汇.

 

 

-25702  词汇数据库不存在.

 

词汇数据库尚未建立. 请从 HOST-TABLE 选单中, 选取 Refresh 选项. 数据库将

会自动建立.

 

 

-25705  在您的词汇中没有主机 '表格-名称' 的表格.

 

您指定的主机表格没有列在词汇中. 可能是下列其中一个原因所造成:

*       您拼错主机表格名称.

*       您的 Answer/Extractor 配置文件名称不正确.

*       您没有存取表格的权限.

*       您的主机表格词汇过期.

请检查主机表格名称的拼法, 以及在 SETUP 屏幕上的 Answer/DB 配置文件名称

参数是否正确. 向您的 Answer/Extractor DBA 查询, 以确认您拥有存取指定

表格的权限. 若有需要, 请重新整理您的主机表格词汇.

 

 

-25709  在您的词汇中没有列出主机表格.

 

在您的主机表格词汇中没有信息. 可能是下列其中一个原因所造成:

*       您拼错 Answer/Extractor 配置文件名称.

*       您没有在主机上存取过任何表格.

*       您尚未重新整理词汇.

*       词汇数据库损坏.

请确认在 SETUP 屏幕上的 Answer/DB Profile Name 参数正确. 若有需要, 请重新

整理您的主机表格词汇.

 

 

-25713  不支持标准数据库引擎.

 

您正在使用 INFORMIX-SE 数据库服务器. 'DataExtract' 不支援 INFORMIX-SE

数据库服务器. 请离开 'Data Extract' . 变更 SQLEXEC 环境变量, 指到

sqlturbo, 并设定TBCONFIG 环境变量. 若有需要, 请重新开启 'DataExtract' .

 

 

-25714  当等待主机数据时, 主机处理逾时极限已经到期.

 

您正在执行 EXTRACT 叙述, 或者正在更新您的主机词汇. 当 DataExtract 在等

主机传回所选取的数据时, 主机处理逾时参数中的时间极限设定已到期. 可能由

下列其中一个原因造成:

*       逾时极限太短.

*       Answer/Extractor 批处理文件处理器, 没有在指定的时间极限内执行.

*       主机非常忙碌.

*       主机通讯无法使用或被插断.

请确认主机通讯可以作业. 请在 SETUP 屏幕中增加主机处理逾时参数. 重新执行

EXTRACT 叙述, 或是选取 HOST-TABLE 选单上的 Refresh 选项, 来重新整理词汇.

如果在您执行 EXTRACT 叙述时发生该错误,请向您的 Answer/Extractor DBA 查询,

以确认处理已选取的主机表格的批处理器之排程. 根据排程调整主机程序的逾

时参数, 或在另一时间重新执行 EXTRACT 叙述.

 

 

-25715  警告:没有符合的字段可用来撷取叙述.

 

这只是个警告讯息. 当Data Extract正在撷取词汇时, 撷取到一个没有在词

汇中列出的字段叙述.

 

 

-25716  加载字段叙述错误.

 

在更新词汇期间, 当您将主机字段叙述插入词汇数据库中时, 'DataExtract' 遭

遇错误. 可能的原因是另一个用户锁定了词汇数据库, 或是发生表格更新的错误.

若是数据库被锁定, 请再度更新词汇.

 

 

-25718  此叙述没有支援或不合法.

 

键入的 SQL 叙述不是不合法, 就是 'DataExtract' 没有支持. 请参考

INFORMIX-Open View User Mannual 的附录 A, 以得到支持的 SQL 叙述清单.

 

 

-25719  主机字段数与目标栏数不符合.

 

当主机数据撷取至表格时, 所列出的主机字段数与所列目标表格字段数不同.

请检查 EXTRACT 叙述, 以确定您列的主机字段数和目标表格栏数相同.

 

 

-25720  主机数据字段 '域名' , 可能在目标栏 '栏-名称' 中溢位.

 

指定的主机字段的定义长度, 比要撷取数据所指定 Informix 表格栏要长. 请在

词汇中检查指定主机字段的定义长度. 重新定义目标栏的长度, 然后重新执行

EXTRACT 叙述.

 

 

-25721  BLOB 数据类型未支援.

 

尝试以主机数据撷取至定义为 BOLB 的栏. 重新定义栏为可支持的数据类型, 或者

修改 EXTRACT 叙述, 以用于非 BLOB 的栏. 然后重新执行 EXTRACT 叙述.

 

 

-25722  未知的主机数据 '类型' 的类型.

 

所列要撷取的主机字段的数据类型不为字符或数字. 词汇数据库不正确. 请重新

整理词汇, 并重新执行 EXTRACT 叙述.

 

 

-25723  不合法的输出媒体.

 

此讯息指出这是数据撷取内部错误. 请重新执行 EXTRACT 叙述. 若错误再度发生,

请离开 'DataExtract' . 重新开启 'DataExtract' , 然后重新执行 EXTRACT 叙述.

 

 

-25724  工作状态无法使用.

 

正检查提出至主机的 Answer/Extractor SELECT 子句状态. SELECT 子句的

状态此时不能使用. 请重新提出您的要求.

 

 

-25727  预先定义的定义不明.

 

此讯息指出这是内部的错误. 请离开 'DataExtract' 并重试选项.

 

 

-25728  无法建立参数 SQLDA.

 

'DataExtract' 无法建立 Answer/API 的数据结构, 来提出您的 EXTRACT 叙述.

可能内存不够. 请离开 'DataExtract' . 重新开启 'DataExtract' , 然后重新

执行 EXTRACT 叙述.

 

 

-25730  无法初始化 Answer/API.

 

'DataExtract' 无法初始化 Answer/API. 请看伴随的 API 错误讯息, 以得到

更多信息.

 

 

-25731  无法建立主机连接.

 

'DataExtract' 无法在主计算机上建立至 Answer/Extractor 的连接. 请看伴随的

API错误讯息, 以得到更多信息.

 

 

-25732  无法中止主机会期.

 

'DataExtract' 无法在主计算机上中止至 Answer/Extractor连接. 请看伴随的 API

错误讯息, 以得到更多信息.

 

 

-25733  无法为 API 初始化状态通讯区域.

 

'DataExtract' 无法为 Answer/API 初始化状态通讯区域. 请看伴随的 API 错误

讯息, 以得到更多信息.

 

 

-25734  无法为 API 初始化环境叙述指标.

 

'DataExtract' 无法为 Answer/API 初始化环境叙述指标. 请看伴随的 API 错误

讯息, 以得到更多信息.

 

 

-25735  无法为 API 初始化查询叙述叙述指标.

 

'DataExtract' 无法为 Answer/API 初始化查询叙述叙述指标. 请看伴随的 API

错误讯息, 以得到更多信息.

 

 

-25736  无法为 API 初始化字段叙述指标.

 

'DataExtract' 无法为 Answer/API 初始化字段叙述指标. 请看伴随的 API 错误

讯息, 以得到更多信息.

 

 

-25737  无法为 API 初始化游标叙述指针.

 

'DataExtract' 无法为 Answer/API 初始化游标叙述指针. 请看伴随的 API 错误

讯息, 以得到更多信息.

 

 

-25738  无法中止 Answer/API.

 

当离开时, 'DataExtract' 无法中止 Answer/API . 请看伴随的 API 错误讯息,

以得到更多信息.

 

 

-25739  无法决定给 API 通讯区域的大小.

 

此讯息指出这是内部的错误. 请结束 DataExtract 并重试选项.

 

 

-25740  无法决定 API 环境叙述指标的大小.

 

此讯息指出这是内部的错误. 请结束 'DataExtract' 并重试选项.

 

 

-25741  无法决定 API 字段叙述指标的大小.

 

此讯息指出这是内部的错误. 请结束 'DataExtract' 并重试选项.

 

 

-25742  无法决定 API 光标叙述指针的大小.

 

此讯息指出这是内部的错误. 请结束 'DataExtract' 并重试选项.

 

 

-25743  不合法的 SQL/ADB SELECT 子句.

 

目前 EXTRACT 叙述中的 SELECT 子句不合法. 请看随后的 API 错误讯息,

以得到更多信息.

 

 

-25744  无法执行 SQL/ADB SELECT 子句.

 

目前 EXTRACT 叙述中的 SELECT 子句无法在主机上执行. 请看伴随的 API 错误

讯息, 以得到更多信息.

 

 

-25745  无法准备存取主机数据.

 

请看伴随的 API 错误讯息, 以得到有关此内部错误更多信息.

 

 

-25746  无法撷取主机数据.

 

'DataExtract' 无法从主机撷取目前 EXTRACT 叙述的结果. 请看伴随的 API

错误讯息, 以得到更多信息.

 

 

-25747  无法撷取主机数据的下一列.

 

DataExtract 从主机撷取数据时发生错误. 请看伴随的 API 错误讯息, 以得到更

多信息.

 

 

-25748  无法中止存取主机数据.

 

'DataExtract' 无法成功地中止存取现有 EXTRACT 叙述的结果. 请看伴随的

API 错误讯息, 以得到更多信息.

 

 

-25749  无法消除主机数据.

 

'DataExtract' 无法消除在主机上的数据.   'DataExtract' 在完成现有 EXTRACT

叙述撷取结果之后, 或在撷取数据时碰到错误之后, 或在使用者取消工作之后消除

主机数据. 请查看伴随的 API 错误讯息, 以得到更多信息.

 

 

-25750  无法撷取工作状态信息.

 

'DataExtract' 无法撷取已经提出至主机的现有 SELECT 子句的状态. 请看伴随

的 API错误讯息, 以得到更多信息.

 

 

-25751  无法在主机上取消工作.

 

'DataExtract' 无法取消已经提出至主机的现有 SELECT 子句. 请看伴随的 API

错误讯息, 以得到更多信息.

 

 

-25753  无法写入主机组态文件.

 

'DataExtract' 无法写入主机组态文件 config.txt. 此文件是在由 ANSAPI 环境变量

指定的路径中, 或是没有设定 ANSAPI 时则在当前目录内. 可能的原因是档案或

路径没有正确的访问权限, 或是没有足够的磁盘空间. 请确认档案和路径拥有正确

的访问权限, 和足够的磁盘空间.

 

 

-25754  无法写入本地组态档.

 

'DataExtract' 无法写入本地组态档 openview.cfg. 此檔是在 ANSAPI 环境

变量指定的路径中, 或是没有设定 ANSAPI 时则在当前目录内. 可能的原因是

档案或路径没有正确的访问权限, 或是没有足够的磁盘空间. 请确认档案和路径

拥有正确的访问权限, 和足够的磁盘空间.

 

 

-25755  无法读取主机组态文件.

 

'DataExtract' 无法读取本地组态档 config.txt. 此文件是在 ANSAPI 环境变量指

定的路径中, 或是没有设定 ANSAPI 时则在当前目录内. 请确认档案和路径拥有

正确的访问权限.

 

 

-25756  无法读取本地组态档.

 

'DataExtract' 无法读取本地组态档 openview.cfg. 此文件是在 ANSAPI 环境变量

指定的路径中, 或是没有设定 ANSAPI 时则在当前目录内. 请确认档案和路径

拥有正确的访问权限.

 

 

-25757  词汇数据库没有开启.

 

'DataExtract' 无法开启词汇数据库. 可能是数据撷取碰到内部错误, 或是对词

汇数据库的系统访问权限被修改过. 请检查词汇数据库, 以确定对数据库的系统

访问权限没有变更过. 若问题仍存在, 要求词汇数据库拥有人移除词汇数据库,

然后以执行词汇更新选项的方法重新建立它.

 

 

-25761  主机环境参数不正确.

 

您在 SETUP 屏幕上主机环境参数内所键入的值不合法, 或是没有支持. 请变更值

为下列其中一个:CICS, CMS, IMS, TSO.

 

 

-25762  需要 CICS 分页码参数.

 

若您在 CICS 中使用 Answer/Extractor , 则需要分页码. 请咨询您的

Answer/Extractor DBA, 以找出 CICS 分页码.

 

 

-25763  需要 CICS 中止码参数给 CICS 主机环境.

 

若您在 CICS 中使用 Answer/Extractor , 则需要一个中止码. 请咨询您的

Answer/Extractor DBA, 以找出 CICS 中止码.

 

 

-25764  需要 Answer/DB 配置文件名称参数.

 

需要 Answer/Extractor 配置文件名称以决定您的主机表格访问权限. . 请咨询您

的 Answer/Extractor DBA, 以找出 Answer/Extractor 配置文件名称.

 

 

-25765  需要 Answer/DB 启动码.

 

需要 Answer/Extractor 启动码来启动 Answer/Extractor. 请咨询您的

Answer/Extractor DBA, 替您的主机环境找出 Answer/Extractor 启动码.

 

 

-25766  锁定时间参数必须在 1 到 300 秒内.

 

您键入的锁定时间不正确. 请变更锁定时间使其在 1 到 300 之间.

 

 

-25767  静态时间参数必须在 2 到 18 秒内.

 

您键入的静态时间不正确. 请变更静态时间使其在 2 到 18 之间.

 

 

-25768  需要连接脚本参数.

 

在 SETUP 屏幕上的连接脚本参数是空白的. 请键入一个合法连接脚本的档名.

若合法的脚本不存在, 请使用 Scripter 公用程序来建立.

 

 

-25769  无法存取指定的连接脚本档.

 

指定的连接脚本档没有出现, 或没有正确的访问权限. 请检查档名的拼法,

以及此文件是在 ANSAPI 环境变量指定的路径中, 或是没有设定 ANSAPI 时则

在当前目录内.

 

 

-25770  需要停止连接脚本参数.

 

在 SETUP 屏幕上的停止连接脚本参数是空白的. 键入一个合法停止连接脚本的档名.

若合法的脚本不存在, 请使用 Scripter 公用程序来建立.

 

 

-25771  无法存取指定的停止连接脚本.

 

指定的停止连接脚本档不存在, 或没有正确的访问权限. 请检查档名的拼法, 以

及此文件是在 ANSAPI 环境变量指定的路径中, 或是没有设定 ANSAPI 时则在目前

的目录内.

 

 

-25772  分类参数必须在 1 到 15 之间.

 

指定的 Answer/Extractor 处理程序分类不正确. 请变更分类参数使其在 1 到

15 之间.

 

 

-25773  主机处理程序逾时参数必须在 1 到 1440 分钟之间.

 

指定的处理程序逾时极限不正确. 请变更主机处理逾时参数, 使其在 1 到

1440 之间.

 

 

-25774  最大处理记录参数必须在1 到 99, 999, 999 之间.

 

指定值不正确. 请变更值使其在可接受范围内.

 

 

-25775  最大撷取记录参数必须在 0 到 9, 999 之间.

 

指定值不正确. 请变更值使其在可接受范围内.

 

 

-25776  确认频率参数必须在 1 到 99, 999, 999 列之间.

 

指定值不正确. 请变更值使其在可接受范围内.

 

 

-25777  不合法的值. 必须为 Y 或 N.

 

您以 Y 或 N 以外的其他字母回答提示. 请变更您的答案为 Y 或 N.

 

 

-25778  写入输出档错误.

 

当 'DataExtract' 撷取主机数据至档案中时, 无法开启指定的输出档案.

请确认有足够的磁盘空间, 并确定档案拥有正确的访问权限.

 

 

-25779  无法开启输出档.

 

当撷取主机数据至档案中时, 'DataExtract' 无法开启指定的输出档案. 若此檔已

经存在, 请确定档案拥有正确的访问权限.

 

 

-25780  警告:主机表格没有定义字段叙述.

 

当 'DataExtract' 更新词汇时, 发现在主计算机上, 没有字段叙述定义提供给

更新的主机表格. 这只是警告讯息而已. 请咨询您的 Answer/Extractor DBA,

关于加入字段叙述给主机表格的部份.

 

 

-25781  找不到主机表格或 FROM 子句.

 

现有的 EXTRACT 叙述中找不到主机表格名称或整个 FROM 子句. 请更正并

重新执行 EXTRACT 叙述.

 

 

-25782  警告:从主机传回不完整的结果.

 

您选取的数据可能在主机上超过您可用的磁盘空间. 从主机撷取的结果不完整.

请采取下列一个或更多的行动:

*       修改您的 SELECT 子句, 来选取较少的数据或字段.

*       咨询您的主机系统管理员, 以得到更多的磁盘空间.

*       修改您的 SIZE 子句, 以撷取较少的列.

*       修改 SETUP 屏幕上 Max Records to Retrieve 参数.

 

 

-25783  在 SIZE 子句中的值不合法.

 

SIZE 子句包含无法接受的字符. 可接收值必须为 1 到 9, 999 的数字.

 

 

-25784  在 SIZE 子句中的数值超出范围.

 

指定值不正确. 可接收值必须为 1 到 9, 999 的数字.

 

 

-26104  API 错误:内存用尽.

 

此讯息指出内存配置错误. Memory Manager 无法配置内存. 请离开 DataExtract

并重试选项.

 

 

-26201  API 错误:无法找到讯息档案.

 

无法找到 Answer/Extractor 讯息档案 message.txt. 请检查 ANSAPI 环境变量

设定正确, 如有必要, 请从 $INFORMIXDIR/etc 拷贝讯息档案到 ANSAPI 目录,

如果没有设定 ANSAPI 时, 则拷贝到当前目录.

 

 

-26202  API 错误:没有空间给讯息档案.

 

此讯息指出这是内部的错误. 请离开 'DataExtract' 并重试选项.

 

 

-26203  API 错误:讯息档案太短.

 

Answer/Extractor 讯息档案 message.txt 不正确或毁损. 请从 $INFORMIXDIR/etc

重新拷贝讯息档案到 ANSAPI 环境变量指定的目录, 如果没有设定 ANSAPI 时,

则拷贝到当前目录.

 

 

-26204  API 错误:讯息档案太长.

 

Answer/Extractor 讯息档案 message.txt 不正确或已经毁损. 请从

$INFORMIXDIR/etc 重新拷贝讯息档案到 ANSAPI 环境变量指定的目录, 如果没有

设定 ANSAPI 时, 则拷贝到当前目录.

 

 

-26205  API 错误:读取讯息档案错误.

 

Answer/Extractor 讯息档案 message.txt 没有正确的访问权限或毁损. 请确认此

档有正确的访问权限. 检查此文件是在 ANSAPI 环境变量指定的目录中, 如果没有

设定 ANSAPI 时, 则在当前目录. 若档案毁损, 请从 $INFORMIXDIR/etc 重新

拷贝档案.

 

 

-26206  API 错误:无法找到组态档案.

 

主机组态档案 config.txt 无法找到. 请使用在 'DataExtract' 主选单的 Setup

选项, 来存取 SETUP 屏幕, 并重新建立组态档案.

 

 

-26207  API 错误:没有空间给组态档案.

 

此讯息指出这是内部的错误. 请离开 'DataExtract' 并重试选项.

 

 

-26208  API 错误:组态档案太短.

 

主机组态档案 config.txt 不正确或已毁损. 使用在 'DataExtract' 主选单的

Setup 选项, 来存取 SETUP 屏幕, 并重新建立组态档案.

 

 

-26209  API 错误:组态档案太长.

 

主机组态档案 config.txt 不正确或已毁损. 请使用在 'DataExtract' 主选单的

Setup选项, 来存取 SETUP 屏幕, 并重新建立组态档案.

 

 

-26210  API 错误:读取组态档案错误.

 

主机组态档案 config.txt 没有正确的访问权限或毁损. 请确认此档有正确的存取

权限. 检查此文件是在 ANSAPI 环境变量指定的目录中, 如果没有设定 ANSAPI 时,

则在当前目录. 若档案毁损, 请使用在 'DataExtract' 主选单的Setup选项,

来存取 SETUP 屏幕, 并重新建立组态档案.

 

 

-26211  API 错误:不正确的 SQLCA 结构.

 

此讯息指出这是内部的错误. 请离开 'DataExtract' 并重试选项.

 

 

-26212  API 错误:没有通讯卡.

 

连接到主计算机所需要的硬件没有安装, 或者无法适当地运作. 请确认通讯卡

已安装完成并且架构正确.

 

 

-26217  API 错误:驱动程序扫瞄内码档案不一致.

 

控制器指示檔 driver.dsc 不合法或毁损. 请重新拷贝档案到 ANSAPI 指定的目录,

如果没有设定 ANSAPI 时, 则拷贝到当前目录.

 

 

-26224  API 错误:主机会期忙碌.

 

仿真软件无法使用, 或在 SETUP 屏幕上主机会期参数内指定的主机会期,目前正在

使用中. 请确认仿真软件为可用的. 如果是可用的, 请变更在 SETUP 屏幕上的主机

会期参数为不同的主机会期. 请确定依照您的仿真软件要求, 来变更任何组态档案.

 

 

-26225  API 错误:主机会期不存在.

 

在 SETUP 屏幕上主机会期参数内指定的主机会期名称不正确. 请修正主机会期名称.

确定依照您通讯软件的要求, 来变更任何组态档案.

 

 

-26230  API 错误:会期无法设定为型号 5 的终端机.

 

'DataExtract' 不支援型号 5 的终端机. 请重新架构您的 3270 仿真软件为型号

2 的终端机, 并且重新启动 'DataExtract' .

 

 

-26231  API 错误:键盘永久锁定.

 

在主机会期上的键盘禁止信号, 没有在 Lock Time 参数的逾时点设定期间清除.

产生的原因可能是下列几点:

*       在 Lock Time 参数内指定的时间太短.

*       主机会期停机.

*       主机会期太慢.

请离开 'DataExtract' . 使用您的 3270 仿真软件 (例如 te3278), 以确认可

用的主机会期. 若主机会期可以用, 请以手动的方式离开会期, 到您连接脚本内

指定的开始点. 重新启动 'DataExtract' . 若主机会期太慢, 请增加 Lock

Time 参数.

 

 

-26233  API 错误:不正确的字符.

 

此讯息指出这是内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26234  API 错误:不正确的脚本.

 

连接或停止连接脚本不正确. 请使用 Scripter 公用程序, 重新建立您的连接或

停止连接脚本. 请确定脚本在 ANSAPI 环境变量所指定的目录中.

 

 

-26235  API 错误:不正确的脚本密码.

 

连接或停止连接脚本的密码不正确. 请在 SETUP 屏幕上, 确认您已经连接或停止

连接脚本密码.

 

 

-26236  API 错误:在屏幕结束后输入.

 

您的 3270 模拟会期没有在连接脚本期待的终端机会期屏幕内. 请离开

'DataExtract' 并确认您的连接脚本是正确的. 请使用 3270 仿真软件, 以确定

它在连接脚本所期待的屏幕内.

 

 

-26237  API 错误:在字段中的输入太长.

 

您的 3270 模拟会期没有在连接脚本期待的终端机会期屏幕内. 请离开

'DataExtract' , 并确认您的连接脚本是正确的. 请使用 3270 仿真软件,

以确定它在连接脚本所期待的屏幕内.

 

 

-26238  API 错误:在等待主机回复时, Lock Time 限制到期.

 

主机在 SETUP 屏幕 Lock Time 参数中所设定的时间限制内没有做出回应. 主机

此时可能无法使用或是在忙碌中. 使用在主选单的SETUP选项, 来存取 SETUP屏幕.

若错误再度发生, 请重新提出您的要求.

 

 

-26239  API 错误:不正确的主机环境参数.

 

指定的主机环境不正确. 请在 SETUP 屏幕上更正主机环境参数.

 

 

-26240  API 错误:不正确的Answer/DB 密码参数.

 

指定的 Answer/DB 密码不正确. 请在 SETUP 屏幕上确认 Answer/DB 密码参数.

 

 

-26241  API 错误:不正确的 Answer/DB 配置文件名称参数.

 

指定的 Answer/DB 配置文件名称参数不正确. 请在 SETUP 屏幕上确认 Answer/DB

配置文件名称参数.

 

 

-26242  API 错误:无法明了的响应.

 

您的 3270 模拟会期, 没有在连接脚本期待的终端机会期内. 请离开

'DataExtract' 并确认您的连接脚本是正确的. 请使用 3270 仿真软件, 以确定

它是在连接脚本所期待的终端机会期内.

 

 

-26245  API 错误:Answer/DB 启动失败.

 

您的 3270 模拟会期, 没有在连接脚本期待的终端机会期内. 请离开

'DataExtract' 并确认您的连接脚本是正确的. 请使用 3270 仿真软件,

以确定它是在连接脚本所期待的终端机会期内.

 

 

-26246  API 错误:无法开启脚本.

 

连接或停止连接的脚本无法开启. 请确认连接或停止连接脚本档案是否拥有正确

的访问权限.

 

 

-26247  API 错误:不正确的 SQLEA 结构.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26248  API 错误:SQLDA 小于最小值.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26249  API 错误:SQLST 小于最小值.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26250  API 错误:不正确的查询名称.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26251  API 错误:不正确的 SQLDA 结构.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26252  API 错误:不正确的 SQLST 结构.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26253  API 错误:SQLDA 结构太小.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26254  API 错误:SQLST 结构太小.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26255  API 错误:SQLDA 没有包含域名.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26256  API 错误:找不到SELECT .

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26257  API 错误:找不到FROM .

 

在目前 EXTRACT 叙述中的 SELECT 子句遗漏了 FROM 子句. 请更正并重新

执行 EXTRACT 叙述.

 

 

-26258  API 错误:不正确的 SELECT 参考.

 

在目前 EXTRACT 叙述中的 SELECT 子句不正确. 请更正并重新执行

EXTRACT 叙述.

 

 

-26259  API 错误:不正确的 FROM 参考.

 

在目前 EXTRACT 叙述中的SELECT 子句内有不正确的 FROM 参考. 请更正

并重新执行 EXTRACT 叙述.

 

 

-26260  API 错误:不正确的范围变量.

 

在目前 EXTRACT 叙述中的 SELECT子句, 包含了不正确的范围变量. 请更正并

重新执行 EXTRACT 叙述.

 

 

-26262  API 错误:在 WHERE 子句中有不正确的比较.

 

在目前 EXTRACT 叙述中的 WHERE 子句内包含了不正确的比较. 请更正并

重新执行 EXTRACT 叙述.

 

 

-26263  API 错误:不正确的函数参考.

 

在目前 EXTRACT 叙述中的 SELECT 子句内的参考函数不正确. 请更正并

重新执行 EXTRACT 叙述.

 

 

-26265  API 错误:ORDER BY 包含没有选取的字段.

 

在目前 EXTRACT 叙述中 ORDER BY 子句内的一些指定字段没有选取. 请修改

SELECT 子句以选取字段, 并重新执行 EXTRACT 叙述.

 

 

-26267  API 错误:不正确的通用字符.

 

在目前 EXTRACT 叙述中 SELECT 子句内的通用字符不正确. 请更正并重新执行

EXTRACT 叙述.

 

 

-26268  API 错误:不正确的代换.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26269  API 错误:无法明嘹的关键词.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26270  API 错误:不正确的预先定义查询.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26271  API 错误:没有设立主机连接.

 

此时无法建立连接到主机上的 Answer/Extractor . 请离开 'DataExtract' 并重

新提出要求.

 

 

-26272  API 错误:主机连接没有中止.

 

连接到主机上之 Answer/Extractor 无法中止. 主机会期可能未预期的停止连

接. 请使用仿真软件, (例如 te3278), 以确认主机连接已经中止. 此会期可能需

要以手动的方式加以中止.

 

 

-26273  API 错误:不正确的分类数.

 

在分类参数中设定的值不正确 . 请咨询您的 Answer/Extractor DBA 以决定正确的

分类值. 请在 SETUP 屏幕上更正分类参数, 并重新执行 EXTRACT 叙述.

 

 

-26274  API 错误:不正确的项目计数.

 

在 Max Records to Process 参数设定的值不正确. . 请在更正在 SETUP 屏幕上

的参数, 并重新执行 EXTRACT 叙述.

 

 

-26275  API 错误:不正确的记录计数.

 

在 Max Records to Retrieve 参数设定的值不正确. 请更正在 SETUP 屏幕上的

参数, 并重新执行 EXTRACT 叙述.

 

 

-26276  API 错误:在 SQLST 中的查询不正确.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26277  API 错误:表格没有在主机上存在.

 

在目前 EXTRACT 叙述中指定的主机表格不存在, 虽然它已列在词汇中. 主机表格

词汇可能已经过期. 请更新整个主机表格词汇.

 

 

-26278  API 错误:字段没有出现在主机上.

 

在目前 EXTRACT 叙述中指定的其中一个主机字段, 没有出现在主机上. 虽然它

已经在您的主机表格词汇中列出. 您的主机表格可能已经过期. 请在有问题的主机

表格中更新主机表格信息.

 

 

-26279  API 错误:对 Answer/Extractor 的查询太大.

 

目前 EXTRACT 叙述中的 SELECT 子句太长.

 

 

-26280  API 错误:CICS 分页码参数遗失.

 

CICS 分页码遗失. 请使用 SETUP 屏幕来设定 CICS 分页码参数.

 

 

-26281  API 错误:无法找到讯息本文.

 

当 'DataExtract' 尝试撷取主机数据或检查工作状态时, 并没有接收到来自大型

主机的预期讯息. 请离开 'DataExtract' 并重试选项.

 

 

-26282  API 错误:不正确的 SQLCR 结构.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26283  API 错误:环境已经有开启的光标.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26284  API 错误:SQLCR 结构已经开启.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26285  API 错误:查询数据无法在主机上使用.

 

在目前 EXTRACT 叙述中 SELECT 子句的结果, 无法在主机上使用. 请更正并重新

执行 EXTRACT 叙述.

 

 

-26286  API 错误:SQLCR 结构没有开启.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26287  API 错误:ORDER BY 字段重复.

 

在目前 EXTRACT 叙述中的 ORDER BY 子句内的主机字段重复. 请更正并重新执行

EXTRACT 叙述.

 

 

-26288  API 错误: GROUP BY 字段重复.

 

在目前 EXTRACT 叙述中的 ORDER BY 子句内的主机字段重复. 请更正并重新执行

EXTRACT 叙述.

 

 

-26289  API 错误:表达式元素太长.

 

在目前 EXTRACT 叙述中 SELECT 子句内的表达式太长. 请更正并重新执行

EXTRACT叙述.

 

 

-26290  API 错误:无法辨认表达式元素.

 

在目前 EXTRACT 叙述中 SELECT 子句内的表达式不正确. 请更正并重新执行

EXTRACT叙述.

 

 

-26291  API 错误:遗失在表达式之间的连接符号.

 

目前 EXTRACT 叙述中的 SELECT 子句, 遗失在表达式之间的连接符号. 请更正并

重新执行 EXTRACT 叙述.

 

 

-26292  API 错误:遗失右括号.

 

目前 EXTRACT 叙述中的 SELECT 子句遗失了一个匹配的括号. 请更正并重新执行

EXTRACT 叙述.

 

 

-26293  API 错误:上下文的数据类型不正确.

 

目前 EXTRACT 叙述中的 SELECT 子句 , 包含不正确的数据类型项目. 请更正并

重新执行 EXTRACT 叙述.

 

 

-26294  API 错误:遗失左括号.

 

目前 EXTRACT 叙述中的 SELECT 子句遗失了一个左括号. 请更正并重新执行

EXTRACT叙述.

 

 

-26295  API 错误: ESCAPE 值必须为单一字符.

 

目前 EXTRACT 叙述中的 SELECT 子句中 , 包含了不正确的 ESCAPE 值. 请更正

并重新执行 EXTRACT 叙述.

 

 

-26296  API 错误:需要域名.

 

在目前 EXTRACT 叙述中的 SELECT 子句内 , 至少需要一个主机域名. 请更正

并重新执行 EXTRACT 叙述.

 

 

-26297  API 错误:查询包含额外的本文.

 

目前 EXTRACT 叙述中的 SELECT 子句中 , 包含额外的本文. 请更正并重新执行

EXTRACT 叙述.

 

 

-26298  API 错误:内部查询剖析器错误.

 

此讯息指出这是个内部错误. 请离开 DataExtract 并重试选项.

 

 

-26299  API 错误: 必须至少选取一个字段或函数值.

 

目前 EXTRACT 叙述中的 SELECT 子句中 , 没有包含任何主机字段或函数值的参考.

请更正并重新执行 EXTRACT 叙述.

 

 

-26300  API 错误: 不支援 DISTINCT.

 

目前 EXTRACT 叙述中的 SELECT 子句中 , 包含没有支持的关键词 DISTINCT.

请更正并重新执行 EXTRACT 叙述.

 

 

-26301  API 错误:无法在此上下文中使用 ALL.

 

在目前 EXTRACT 叙述中误用 SELECT 子句内的 ALL 关键词. 请更正并重新执行

EXTRACT 叙述.

 

 

-26302  API 错误:不正确的摘要函数.

 

在目前 EXTRACT 叙述中 SELECT 子句内的累积函数不正确. 请更正并重新执行

EXTRACT 叙述.

 

 

-26303  API 错误:不良的 GROUP BY子句.

 

在目前 EXTRACT 叙述中的 GROUP BY 子句不正确. 请更正并重新执行

EXTRACT 叙述.

 

 

-26304  API 错误:不良的 ORDER BY 子句.

 

在目前 EXTRACT 叙述中的 ORDER BY 子句不正确. 请更正并重新执行

EXTRACT 叙述.

 

 

-26305  API 错误:无法初始化 NULL SQLDA.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26306  API 错误:无法初始化 NULL SQLCA.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26307  API 错误:无法初始化 NULL SQLEA.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26308  API 错误:无法初始化 NULL SQLST.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26309  API 错误:无法初始化 NULL SQLCR.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26310  API 错误:SQLST 没有准备.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26311  API 错误:不正确的预先定义查询.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26312  API 错误:预先定义的查询无法执行.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26313  API 错误:不正确的查询名称.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26314  API 错误:光标已经开启,而且在使用中.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26315  API 错误:游标没有开启.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26316  API 错误:没有可用的会期.

 

此时没有可用的主机会期. 请重新提出您的要求. 请确定前面的会期, 或先前启

动的处理程序已经中止.

 

 

-26317  API 错误:没有找到驱动程序扫瞄码档案.

 

找不到驱动程序扫瞄码档案 driver.dsc . 请确定driver.dsc 档案出现在

ANSAPI 环境变量所指定的路径中, 或是如果没设定 ANSAPI 时, 则会出现于目前

的目录之下. 如有需要, 请从 $INFORMIXDIR/etc 中拷贝档案.

 

 

-26318  API 错误:不正确的讯息档案.

 

讯息档案 message.txt 不正确或是已经毁损. 请重新从 $INFORMIXDIR/etc 拷贝

讯息档案, 至由环境变量 ANSAPI 所指定的路径中, 或是如果没设定 ANSAPI 时,

则拷贝到当前目录之下.

 

 

-26319  API 错误:讯息档案太长.

 

讯息档案 message.txt 不正确或是已经毁损. 请重新从 $INFORMIXDIR/etc 拷

贝讯息档案, 至由环境变量 ANSAPI 所指定的路径中, 或是如果没设定 ANSAPI 时,

则拷贝到当前目录之下.

 

 

-26320  API 错误:读取档案时发生错误.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26321  API 错误:没有足够的内存以读取档案.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26322  API 错误:找不到档案.

 

找不到 message.txt 或 config.txt 档案 . 请确认它们是否存在.

 

 

-26323  API 错误:错的选项叙述指针.

 

在 message.txt 檔, config.txt 文件或参数字符串的项目不正确. 请更正错误.

 

 

-26324  API 错误:不正确的参数值.

 

在 message.txt 檔, config.txt 文件或参数字符串中, 包含了不正确的参数值. 请更

正错误.

 

 

-26325  API 错误:不正确的选项关键词.

 

在 message.txt 檔, config.txt 文件或参数字符串中, 包含了不正确的选项关键

字. 请更正错误.

 

 

-26326  API 错误: Stable Time 参数遗失.

 

Stable Time 参数从主机组态文件中遗失. 请使用 SETUP 屏幕来设定 Stable

Time 参数.

 

 

-26327  API 错误: Lock Time 参数遗失.

 

Lock Time 参数从主机组态文件中遗失. 请使用 SETUP 屏幕来设定 Lock Time

参数.

 

 

-26328  API 错误:主机环境参数遗失.

 

主机环境参数从主机组态文件中遗失. 请使用 SETUP 屏幕来设定主机环境参数.

 

 

-26329  API 错误:Answer/DB 启动码参数遗失.

 

Answer/DB 启动码参数从主机组态文件中遗失. 请使用 SETUP 屏幕来设定

Answer/DB 启动码参数. 联络您的 Answer/Extractor DBA 来决定 Answer/DB

启动码.

 

 

-26330  API 错误:Answer/DB 配置文件名称参数遗失.

 

Answer/DB 配置文件名称参数从主机组态文件中遗失. 请使用 SETUP 屏幕来设定

Answer/DB 配置文件名称参数. 联络您的 Answer/Extractor DBA 来决定

Answer/DB配置文件名称参数.

 

 

-26331  API 错误:CICS 分页码参数遗失.

 

CICS 分页码从主机组态文件中遗失. 请使用 SETUP 屏幕来设定 CICS 分页码参数.

咨询您的 Answer/Extractor DBA 来决定 CICS 分页码.

 

 

-26332  API 错误:CICS 中止码参数遗失.

 

CICS 中止码从主机组态文件中遗失. 请使用 SETUP 屏幕来设定 CICS 中止码参数.

咨询您的 Answer/Extractor DBA 来决定 CICS 中止码.

 

 

-26337  API 错误:报表中没有更多数据.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26338  API 错误:定时器数字不正确.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26339  API 错误:辅助说明档案不存在.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26341  API 错误:参数类型错误.

 

此讯息指出这是个内部错误. 请结束 'DataExtract' 并重试选项.

 

 

-26342  API 错误:没有足够的参数值.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26343  API 错误:主机表格没有包含字段.

 

此讯息指出这是个内部错误. 可能是主机表格没有包含在 SELECT 子句中

所列的字段, 或是表格没有包含任何字段.

 

 

-26344  API 错误:分类值超出范围.

 

在分类参数中设定的值超出范围. 请使用 SETUP 屏幕来更正分类参数.

 

 

-26345  API 错误:最大值超出范围.

 

Max Record to Progress 或 Max Records to Retrieve 的值超出范围. 请使用

SETUP 屏幕来更正参数.

 

 

-26346  API 错误:报表中已无数据.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26347  API 错误:报表含有不兼容数据.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26348  API 错误:报表大小超过; 无资料.

 

现行 EXTRACT 叙述中的 SELECT 子句所选取的数据超过主机所允许的大小.

修改 EXTRACT 叙述以选取较少的数据. 重新执行 EXTRACT 叙述.

 

 

-26349  API 错误:报表缓冲区太小.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26350  API 错误:Summary 变量与主机冲突.

 

此讯息指出这是个内部错误. 请离开 'DataExtract' 并重试选项.

 

 

-26351  API 错误:脚本档无法读取.

 

连接或停止连接脚本档无法读取. 请确认连接器停止连接脚本档有正确的

权限. 如有必要, 请使用 Scripter 公用程序重新建立.

 

 

-26352  API 错误:脚本文件内存不够.

 

此讯息指出内存配置错误. 请离开 'DataExtract' 并重试选项.

 

 

-27000  无法支持在共享内存上的多重连接.

 

应用程序无法使用 CONNECT 叙述, 使得能使用共享内存通讯 (IPC) 的连接能够

超过一个.

请确定应用程序一次只能使用一个共享内存连接. 若应用程序必须使用并行连接,

OnLine 管理员可能需要变更连接类型(如指定在 sqlhost 檔中的 net-type 字段),

从共享内存连接变成网络连接.

 

 

-27001  在尝试连接期间发生读取错误.

 

这个错误可能发生在客户端或数据库服务器.

如果您是在客户端遇到这个错误, 则表示当客户端尝试与数据库服务器连接时,

发生了网络输出 / 输入的错误. 可能是由于数据库服务器或网络网络过于忙碌,

同时尝试与数据库服务器连接的客户端太多, 或是数据库服务器在连接尝试期间

在脱机状态, 而使得连接的尝试逾时.

如果您正在使用 INFORMIX OnLine 活动服务器, 请确定数据库服务器仍然在在线.

如果您是使用 INFORMIX-SE 数据库服务器, 请确定数据库服务器的 sqlexecd

daemon 仍然在执行中. 请使用客户端的环境变量 INFORMIXCONTIME 和/或

INFORMIXCONRETRY 来增加重新尝试的连接时间以及数目.

如果您是在数据库服务器这一边遇到此错误, 则它就是一个警告讯息, 表示当

数据库服务器正在接收来自客户端的连接要求时, 侦测到网络的输出 / 输入错误.

这个错误通常是发生在数据库服务器或是网络非常忙碌, 或是在同一时间尝试与

数据库服务器连接的客户端过多的情况. 数据库服务器在连接完成之前, 对于用户

端的连接要求逾时, 可能要求很长的时间来响应, 或者客户端也有可能在连接完

成之前便终止其连接尝试.

如果这个错误在服务器讯息登录中只是偶尔才会看见的话, 则表示它只是一个警告

讯息. 在服务器方面则不需要任何的更正动作.

如果此错误在 INFORMIX-OnLine 服务器上发生的机率非常频繁, 而且该服务器又

是在有多个处理器的主机上执行的话, 您可能需要增加轮询处理线串和/或

listener 处理线串的数目, 以调整数据库服务器.

 

 

-27002  在 OnLine 安静模式中不允许连接.

 

您正在尝试连接在安静模式下的数据库服务器. 请确认您的 INFORMIXSERVER 环境

变量设定是正确的. 请联络 OnLine 管理员, 将适当的 OnLine 数据库伺服改为

在线模式.

 

 

-27003  内部通讯错误:侦测到内部的不一致性.

 

Informix 主/从式通讯系统经侦测到一个内部的不一致性.

基本上, 这个错误

是由客户端应用程序所发出. 原因可能是因为程序错误,

造成内存毁损. 若错误

是由数据库服务器或公用程序所发出, 便是 Informix 内部错误.

当 Informix

内部错误发生时, 请记下所有的情况,

并且联络 Informix 技术支持部门.

 

 

-29002  提供的 real-RDB-name 与 sqlhosts的 real-RDB-name不符..

 

侦测到使用者提供的 real-RDB-name和使用 sqlhosts 档案提供的 aliasRDB-name

衍生的real-RDB-name不符.

 

检查使用者提供的 real-RDB-name拼法. 确定使用者提供的 alias-RDB-name

是正确的名称.

 

若 SNA 网络协议是用来连接应用程序服务器, 检查 "sqlhosts" 档案中

real-RDB-name名称选项 ("主机名" 字段) alias-RDB-name 的输入,

并检查拼字的正确性.

 

若 TCP/IP 网络协议是用来连接应用程序服务器, 检查 "sqlhosts" 档案中

"RDB=real-RDB-name" 选项 (在 "选项" 字段中) alias-RDB-name的输入, 并检

查拼字的正确性.

 

 

-29003  RDB real-RDB-name 在应用程序服务器中未找到.

 

虽然已配置通讯对话, 但应用程序服务器拒绝连接. 因为 real-RDB-name 与应

用程序所要连接的不同.

 

检查网关计算机中的 sqlhosts 档案. 以 alias-RDB-name名称来识别输入, 该名

称为应用程序所参考的名称.

 

若 SNA 网络协议是用于连接应用程序服务器, 确定 "主机名" 字段包含正

确的值.

 

若 TCP/IP 网络协议是用于连接应用程序服务器, 确定"选项" 字段的

"RDB=real-RDB-name" 选项包含正确的值.

 

 

-29004  DRDA 协议错误. ReplyMsg[, sub-code]:    ReplyMessage-codepoint[,

sub-code].

 

DRDA 协议错误会使得现有的 SQL 叙述之执行无法成功.

这个错误将不会影响接下

来SQL 叙述执行的成功与否.

从应用程序服务器接收到的 DRDA

内部分布式数据管理系统(DDM)回复的讯息指出

发生了错误. 这表示应用程序服务器,

或者是应用程序要求器(AR)侦测到错误讯息.

十六进制 codepoint 和极可能是十六进制子码,

在 SQLERRM 中以符令方式传回.

若要解译十六进制 codepoint 和十六进制的子码,

您需要有 DDM 的知识.

十六进制 codepoint 为两个字节的十六进制 codepoint ,

用来对应表示错误

的 DDM 回复讯息, 而且可能为下列其中一个:

*       X'220A' -- DSCINVRM

*       X'124C' -- SYNTAXRM

*       X'1245' -- PRCCNVRM

*       X'1254' -- CMDCHKRM

*       X'220E' -- DTAMCHRM

*       X'2202' -- QRYNOPRM

*       X'220F' -- QRYPOPRM

*       X'2207' -- RDBACCRM

*       X'2204' -- RDBNACRM

两字节的十六进制子码会伴随

前面三个原因码出现 (DSCINVR, SYNTAXRM, 和

PRCCNVRM). 在所有其它情况下, 子码为零.

当不为零时, 子码中的高位表示错误被侦测到的位置.

若 AR 侦测到错误, 其

为X'01'. 若应用程序服务器侦测到错误, 则为 X'02' 低位如下:

*               描述错误码(DSCERRCD)if reason code = DSCINVRM

*               语法错误码 (SYNERRCD) if reason code = SYNTAXRM

*               交谈协议错误码 (PRCCVNCD) if reason code = PRCCNVRM

通知 DBA, 以获得在分析产生 SQLCODE 的 SQL 叙述上的协助.

若错误再度发生,

请记下所有的情况, 并且联络 Informix 技术支持部门 .

 

 

-29005  DRDA 协议错误. ReplyMsg[, sub-code]:

ReplyMessage-codepoint[, sub-code].

 

DRDA 协议错误会造成交谈被解除分配.

从应用程序服务器接收到的 DRDA

内部分布式数据管理系统 (DDM) 回复的讯息指

出发生了错误. 这表示应用程序服务器侦测到,

或者是, 应用程序要求器 (AR) 侦

测到错误讯息.

十六进制 codeoint 和极可能是十六进制的子码,

在 SQLERRM 中以符令方式传回.

若要解译十六进制 codepoint 和子码需要 DDM 的知识.

十六进制 codepoint 为两个字节的十六进制 codepoint ,

用来对应表示错误

的 DDM 回复讯息, 而且可能为下列其中一个:

*       X'220A' -- DSCINVRM

*       X'124C' -- SYNTAXRM

*       X'1245' -- PRCCNVRM

*       X'1218' -- MGRDEPRM

*       X'1232' -- AGNPRMRM

*       X'1254' -- CMDCHKRM

*       X'220E' -- DTAMCHRM

*       X'2202' -- QRYNOPRM

*       X'220F' -- QRYPOPRM

*       X'2207' -- RDBACCRM

*       X'2204' -- RDBNACRM

两字节的十六进制子码会伴随

前面四个原因码出现(DSCINVR, SUNTAXRM,

PRCCNVRM,和 MGRDEPRM). 在其它所有情况下,

子码为零.

当不为零时, 子码中的高字节表示错误被侦测到的位置.

若 AR 侦测到错误,

其为X'01'. 若应用程序服务器侦测到错误,

则为 X'02' 低排序字节如下:

*               描述错误码(DSCERRCD)if reason code = DSCINVRM

*               语法错误码 (SYNERRCD) if reason code = SYNTAXRM

*               交谈协议错误码 (PRCCVNCD) if reason code = PRCCNVRM

*               管理员依赖错误码 (DEPERRCD) if reason code = MGRDEPRM

通知 DBA, 以获得在分析产生 SQLCODE 的 SQL 叙述上的协助.

若错误再度发生,

请记下所有的情况, 并且联络 Informix 技术支持部门 .

 

 

-29006  DRDA 连接协议错误. 管理员, 层级:(manager, level) 并不支援.

 

连接处理程序失败.

在 DRDA 连接处理程序期间, 应用程序服务器无法支持

AR 需要的 DRDA 管理员层级.

管理员 (MGRLVL) 和需要层级的十六进制 codepoint,

在 SQLERRM 中以符令

方式传回. 尝试再次连接到应用程序服务器.

若问题仍存在, 请通知 DBA 以

获得援助. 若错误再度发生, 请记下所有的情况,

并且联络 Informix 技术支持部门 .

 

 

-29007  RDB 授权失败. RDB-userID, RDB: RDB-userID, RDB-name.

 

用户没有授权存取目标 RDB. 要求被拒绝.

若有需要的话, 可以联络 RDB 方面的 DBA. 请更正授权问题, 然后重新执行

应用程序.

 

 

-29008  DDM 参数(parameter-codepoint)没有支持的错误. 停止自 AS 的连接.

 

遭遇到没有支援的 DDM 参数.

远程 RDB 接收到未支持/无法辨别 的 DDM 参数. 目前的 SQL 叙述中止. 应用程序

与应用程序服务器的连接停止.

DDM 参数的十六进制 codepoint 在 SQLERRM 中是以符令方式传回.

解译十六进制 DDM 参数的 codepoint 需要 DDM 的知识.

尝试重新执行应用程序. 若问题持续出现, 请通知 DBA. 以获得在分析产生

SQLCODE 的 SQL 叙述上的协助. 若错误再度发生, 请记下所有的情况, 并且联络

Informix 技术支持部门.

 

 

-29009  DDM 参数值 (parameter, parameter-value) 不支援. 停止自 AS 的连接.

 

远程 RDB 接收到 DDM 参数的未支持/无法辨别参数值. 目前的 SQL 叙述中止.

应用程序与应用程序服务器停止连接.

参数值和 DDM 参数的十六进制 codepoint 在 SQLERRM 中是以符令方式传回.

解译十六进制 DDM 参数和参数值的十六进制 codepoints 需要 DDM 的知识.

请尝试重新执行应用程序. 若问题仍出现, 请通知 DBA, 取得有关分析产生

SQLCODE 的 SQL 叙述上的协助. 若错误再度发生, 请记下所有的情况, 并且联络

Informix 技术支持部门.

 

 

-29010  Gateway 没有支持 AS 回复讯息(codepoint=codepoint).

 

Gateway 接收到未支持/无法辨别 的 DDM 回复讯息. 目前的 SQL 叙述中止.

应用程序与应用程序服务器停止连接.

接收到 DDM 回复讯息的十六进制 codepoint 在 SQLERRM 中是以符令方式传回.

解译十六进制 DDM 参数和参数值需要 DDM 的知识.

请尝试重新执行应用程序. 若问题仍出现, 请通知 DBA, 这获得分析此 SQLCODE

的 SQL 叙述的协助. 若错误再度发生, 请记下所有的情况, 并且联络 Informix

技术支持部门.

 

 

-29011  SNA 通讯错误. Informix-SQLCODE, native-SNA-rc:

Informix-communication-SQLCODE, native-SNA-return-code.

 

Informix 和通讯有关的 SQLCODE 以及十六进制原生的 SNA 服务传回码, 在

SQLERRM中是以符令号方式传回.

Informix 和通讯相关的 SQLCODE, 是由 Informix 通讯调适服务所产生的传回码,

此传回码与目前所用的平台种类是无关的. 请参考 SQLCODE 的解释, 以得到更多

相关的错误叙述.

原生 SNA 服务传回码, 是由在每个特殊平台提供 SNA 支持的本地 SNA 服务

所产生的. 请参考支持 SNA 对提供基本通讯服务的厂商所提供的文件来解释传回码.

确定本地的 SNA/APPC 服务安装正确. 检查所有需要的 SNA daemon 处理程序

(如果有的话)是否正在执行. 同时检查目标 RDB 的连接档案是否设定正确.

在 Sun 系统环境中, 也应检查 Sun APPC Gateway 是否设定正确.

 

 

-29012  已经移除, 变更, 或更名一个或多个表格.

 

准备好的叙述不再正确, 因为其参考的表格纲要已经变更. 您必须重新准备叙述.

 

 

-29013  AS 资源无法使用. 理由, 类型, 名称, PrdID, RDB: Reason,

ResourceType, ResourceName, ProductID, RDBname.

 

在远程 RDB 无法使用资源. 目前的 SQL 叙述中止.

Reason, ResourceType, REsourceName, ProductID, 和 RDBname 在 SQLERRM

中以符令方式传回.

请确认无法使用的资源识别. 确定应用程序服务器有需要的资源.

 

 

-29014  Hard AS 资源无法使用. 理由, 类型, 名称, PrdID, RDB: Reason,

ResourceType, ResourceName, ProductID, RDBname.

 

在远程的 RDB 内无法使用资源. 应用程序与应用程序服务器停止连接.

Reason, ResourceType, ResourceName, ProductID, 和 RDBname 在 SQLERRM

中以符令方式传回.

请确认无法使用的资源识别. 确定应用程序服务器有需要的资源. 并请重新执行

应用程序.

 

 

-29015  在系结时尝试使用非系结的相关 DDM 指令 (codepoint=codepoint) .

 

当远程的系结正在进行时, 尝试执行 SQL 叙述的远程执行或远程指令. 在系

结间允许的唯一指令为 Bind, End Bind, Rollback, 或 Commit 叙述.

这是个 -Gateway 内部逻辑错误.

提到的 DDM 指令在 SQLERRM 中是以符令方式传回.

来自终端用户的应用程序不应该进入系结模式中. 分封系结所能发生的

唯一时间只有在 drdadba 公用程序的分封系结处理程序时. 请重新执行

应用程序. 若错误再度发生, 请记下所有的情况, 并且联络 Informix 技术

支持部门.

 

 

-29016  当系结不是在作业中时, 遭遇到系结的相关指令(codepoint=codepoint).

 

叙述的系结或 End Bind , 在分封没有进行系结处理程序时, 以指定的分封名称

和一致的符令来尝试.

这是个 -Gateway 内部逻辑错误. 请再尝试应用程序. 若错误再度发生, 请记下

所有的情况, 并且联络 Informix 技术支持部门.

 

 

-29018  AS 没有支持 DDM 指令: command-codepoint.

 

应用程序服务器没有支持 DDM 指令. 这个错误会造成指令处理程序的中止.

应用程序与应用程序服务器亦停止连接.

SQLERRM 包含提出的 DDM 指令之十六位 codepoint.

请重新执行应用程序. 若问题仍出现, 请通知 DBA, 以获得产生 SQLCODE 的

SQL 叙述的协助. 若错误再度发生, 请记下所有的情况, 并且联络 Informix 技术

支持部门.

 

 

-29019  AS 没有支持 DDM 对象类型: object-codepoint.

 

应用程序服务器没有支持 DDM 对象. 目前 SQL 叙述的处理程序会中止. 应用

程序与应用程序服务器停止连接.

SQLERRM 包含对象类型之十六位 DDM codepoint.

请重新尝试执行程序. 若问题持续出现, 请通知 DBA, 以获得产生 SQLCODE 的

SQL 叙述的协助. 若错误再度发生, 请记下所有的情况, 并且联络 Informix 技术

支持部门.

 

 

-29030  Gateway 不支持此特性 '特性名称' .

 

Gateway 不支持此特性. (例如, 不支持 Informix 特定 SQL 叙述或 Informix

特定数据类型, ) 不支持的功能在 SQLERRM 中是以符令方式传回.

请更正应用程序, 而且不要使用在执行时, 会经过 Gateway 的任何 Gateway

的 SQL 叙述, 其所不支持的特性.

 

 

-29035  Gateway 接收到不相容的数据类型.

 

Gateway 没有支持或是接收到不兼容的数据类型. (对于有 DRDA的 Informix

Gateway 来说, 应用程序要求者并不支持从应用程序服务器接收到的数据类型.)

没有支持的数据类型的例子为 1 个字节的整数, 16 个字节

的浮点数. 这些数据类型 Informix 并不支援.

不要从有 Informix Gateway 无法支持数据型态的栏中撷取数据.

 

 

-29036  字符内码集转换档案找不到. from, to, 文件名: from_cs_num,

         to_cs_num, filename.

 

文件名

内码集转换档案的文件名找不到.

from_cs_num

原始内码集的内码集数目.

to_cs_num

目标内码集的内码集数目.

从 from_cs_num 识别的内码集转换为 to_cs_num 识别的内码集的内码集转换表格

找不到. 请参考您的 Informix 产品文件以取得这些内码集数目识别的说明.

如果适当的目录 (请参阅下一段) 并没有包含内码集档案指名的文件名, 此内码集

将无法执行. 请核对您的 Informix 产品文件以确定客户端和服务器产品使用的

内码集已正确的指定 (使用环境变量或其他文件中有说明的机械). 或许指定不正确的

内码集数目, 或是与其他支持的内码集数目相同.

如果内码集转换表格存在的话, 请确认您的产品已经正确地安装, 使得转换表格

档案能够加以定位. 特别请确定 GL_PATH 环境变量是根据安装说明所设定

或是不设定.

*       如果 GL_PATH 没有设定, 请确认转换表格档案是位于

        $INFORMIXDIR/gls/cv 目录中.

*       如果 GL_PATH 有设定的话, 请确认转换表格档案是 GL_PATH 环境

        变量所指定的其中一个目录.

如果内码集转换表格并不存在的话, 请联络您的Informix 软件厂商, 协助您决定

要以内何种内码集转换表格作为您的架构. 如果需要的内码集转换表格可以使用,

请在适当的目录中取代此表格.

请确定适合的 CDBA 转换档, 在 Gateway 客户端应用程序 CCSID , 和在

$INFORMIXDIR/drda/ccsidtab 目录下的应用程序服务器 CCSID顺利转换.

 

 

-29037  没有为 FE 区域化环境 'localename' 所设定的 CCSID 或GLS 区域化环境.

 

有问题的区域化环境会利用 SQLERRM 中的一个符令传回.

通知 Gateway 管理员. 管理员可以使用 gwdba 公用程序, 增加区域化

环境的项目.

 

 

-29039  无法在 PREPARE/EXECUTE IMMEDIATE 中, 使用一个以上的 SQL 叙述.

 

请修改应用程序, 使它不会在 PREPARE 或 EXECUTE IMMEDIATE 叙述中, 包含

一个以上的 SQL 叙述.

 

 

-29042  找不到 RDB 'rdbname' 的分封信息. 请使用 gwdba 加以系结.

 

无法找到目标 RDB 的 -Gateway 分封信息. RDB 中必须的 Gateway 分封尚未

系结完成.

目标 RDB 的 real_RDB_name 会利用 SQLERRM 中的一个符令传回.

末端使用者应该联络 DBA. 如果需要, DBA 可以利用 gwdba 公用程序, 在目标 RDB

上将所需要的 Gateway 分封系结起来.

 

 

-29043  没有剩下 '区段-类型' 的区段. 请以更多的区段重新系结 Gateway 分封.

 

所有在目前分封中的可用区段, 在应用程序服务器中已经用完. 目前的 SQL

叙述会中止.

通知 DBA. DBA 能重新在目标 RDB 的 Gateway 分封系结更多的区段(此 RDB

使用 gwdba 公用程序).

 

 

-29044  Gateway 内部逻辑错误 [diagnostic-error-string].

 

遭遇到内部逻辑错误. 请重新执行应用程序. 若这错误再度发生, 请记下所有的情

况, 并且联络 Informix 技术支持部门 .

 

 

-29045  Gateway 内部逻辑错误 [diagnostic-error-string]. 与 AS 失去连接.

 

遭遇到内部逻辑错误. 这个错误将造成交谈被解除分配.

请重新执行应用程序. 若这错误再度发生, 请记下所有的情况, 并且联络

Informix 技术支持部门.

 

 

-29046  SNA 缓冲区大小(大小)不正确.

 

由 Informix 连接用网络模块配置的传送缓冲区, 小于 DRDA 所要求大小的最小值

(512 字节), 或者大于最大容量(32,767字节).

请检查在 Gateway 机器上的 sqlhosts 档案. 若经由 sqlhosts 档案设定的缓冲

区大小是可以调整的, 请确定所传送的缓冲区大小被架构为介于 512 字节至

32,767 字节之间. (包括前后者)

 

 

-29048  ISAM 错误: 错误讯息.

 

当从 Gateway xxxdba 公用程序管理的 Gateway ISAM 配置文件读取数据时发生

ISAM 错误. 有问题的 ISAM 配置文件名称和 ISAM 错误号码会由 SQLERRM 传回.

如果 Gateway 是经由 IPC-管道模式所产生的, 您必须确定 INFORMIX 环境变量在

应用程序开始之前, 已经正确地设定. 否则的话, 请通知 DBA.

*       INFORMIX-Enterprise Gateway的 DBA 须确定 $INFORMIXDIR/egw/sysinfo

目录存在, 并拥有适当的访问权限, 而且 ISAM 配置文件会出现在该目录中. 如果

Gateway 配置文件遗失或损毁, 请执行 egwdba 以建立Gateway 配置文件, 或执行

bcheckegw 公用程序以修复它.

        如果 INFORMIX-Enterprise Gateway 是经由网络模式产生, (亦即由

daemon egwd 所产生)DBA 亦必须确定当egwd daemon 启动时, INFORMIXDIR

环境变量正确地设定在 root 登入中.

*       INFORMIX-Enterprise Gateway with DRDA 的 DBA 必须确定

$INFORMIXDIR/gw/sysinfo 目录存在, 并拥有适当的访问权限, 而且 ISAM 配置文件

会出现在该目录中. 如果 Gateway 配置文件遗失或损毁, 请执行 gwdba 以建立

Gateway 配置文件, 或执行 bcheckgw 公用程序以修复它.

如果 Gateway 是经由网络模式产生(亦即由 daemon gwd 所产

生), INFORMIX-Enterprise Gateway with DRDA 的 DBA 亦必须确定当

gwd daemon 启动时, INFORMIXDIR 环境变量正确地设定在 root 登入中.

 

 

-29049  无法寻找/开启网关安装档档名.

 

若你正使用 IPC 管道模式来启动网关处理程序, 应该在启动应用程序之前,

确定 INFORMIXDIR 环境变量的设定正确.

 

*  针对 INFORMIXGateway with DRDA:

 

寻找或开启为 gwdba 工具管理的 Gateway ISAM 的安装档时, 发生错误. 造成

错误的 ISAM 安装档名称会在 SQLERRM中传回.

 

若使用网络连接, Informix Enterprise Gateway with DRDA的数据库管理员必须确

定 $INFORMIXDIR/gw/sysinfo 目录中该档案. 若档案遗失, 执行 gwdba 来建立档案.

DBA 也必须确定在启动 gwd daemon 时, INFORMIXDIR 环境变量的设定正确.

 

*   针对 Informix Enterprise Gateway:

 

找寻或开启由 gwdba 工具管理的Informix Enterprise Gateway ISAM 的安装档

时, 发生错误. 造成错误的 ISAM 安装档名称会在 SQLERRM中传回.

 

若使用网络连接,  Informix Enterprise Gateway 的数据库管理员必须确定

$INFORMIXDIR/egw/sysinfo 目录中有该档案. 若档案遗失, 执行 egwdba 来建立档案.

DBA 也必须确定在启动 egwd daemon 时, INFORMIXDIR 环境变量的设定正确.

 

*   针对 Informix Enterprise Gateway Manager:

 

找寻或开启由 gwdba 工具管理的 Gateway ISAM 安装档时, 发生错误. 造成错

误的 ISAM 安装档名称会在 SQLERRM中传回.

 

若使用网络连接, Informix Enterprise Gateway Manager的数据库管理员必须确定

"$INFORMIXDIR/egm/sysinfo" 目录中有该档案. 若档案遗失, 执行 "egmdba" 来建立檔

案. DBA 也必须确定在启动 "egmd" daemon 时, INFORMIXDIR 环境变量的设定正确.

 

 

-32100  MAC 检查失败.

 

您的会期区分标签不允许执行您正存取的 OnLine/Secure 对象上的作业, 因为

其违反 INFORMIX-OnLine/Secure 的 MAC 策略 .请用适合的区分标签登入,

然后重试作业.

 

 

-32101  DAC 检查失败.

 

您的会期身份不允许执行您正存取的 Online /Secure 对象上的作业, 因为其

违反 Online /Secure 的 DAC 策略. 请用合适的身分登入, 或得到必须的权限,

然后重试作业.

 

 

-32102  不良的标签范围.

 

指定与卷标有关的作业范围不正确. 可能是不良的使用者输入或是内部错误.

 

 

-32103  卷标比较作业失败.

 

此内部错误可能是因为要比较的标签是不兼容或不合法的, 或是卷标数据

类型的比较作业不合法.

 

 

-32104  内部错误: 没有表格叙述指针.

 

指定表格的表格叙述指针在核心目录中没有发现.

 

 

-32110  移除数据库的会期层级不合法.

 

您的会期区分层级必须和数据库层级相等.

 

 

-32112  没有 DBA 权限来建立检视纲要.

 

请联络数据库管理员并要求 DBA 权限.

 

 

-32113  没有 DBA 权限来建立表格纲要.

 

请联络数据库管理员并要求 DBA 权限.

 

 

-32114  无法移除系统目录表格.

 

系统-目录表格只有在数据库移除时方可移除.

 

 

-32115  不能变更表格拥有权.

 

变更表格拥有权是不合法的.

 

 

-32116  变更限制的会期层级不合法.

 

您的会期区分层级必须和表格区分层级相等.

 

 

-32117  建立索引的会期层不合法.

 

您的会期区分层级必须和表格区分层级相等.

 

 

-32118  没有建立索引的权限.

 

没有授与在表格上建立索引的权限.

 

 

-32119  变更索引的会期层级不合法.

 

您的会期区分层级必须和表格区分层级相等.

 

 

-32120  没有资源权限.

 

您正在执行的动作需要有数据库上的资源权限. 请联络数据库管理员以取得权限.

 

 

-32121  移除索引的会期层级不合法.

 

您的会期区分层级必须和表格区分层级相等.

 

 

-32122  无法修改系统目录表格.

 

变更不同于系统目录表格的下一个范围大小之属性的动作是不合法的.

 

 

-32123  非索引拥有者.

 

只有索引的拥有者才可以执行您正在尝试的作业.

 

 

-32124  无法在暂时的表格上修改索引.

 

在暂时表格上变更索引是不合法的.

 

 

-32125  目前数据库数目超出范围.

 

此内部错误表示开启的并行数据库数目, 超过在 OnLine Secure 中设定的限制.

 

 

-32126  不合法的标签附笺.

 

操作系统无法了解您提供的附笺值.

 

 

-32127  移除表格的会期层级不合法.

 

您的会期区分层级必须和表格区分层级相等.

 

 

-32128  您没有权限变更 SERIAL 栏.

 

您需要在表格上有插入或变更权限, 或在 SERIAL 栏上有更新权限, 以变更序列值.

 

 

-32129  表格没有在要求的层级中开启.

 

此讯息只有应用在多层级安全应用程序. 您正尝试在与您开启表格的层级较高或

无法比较的表格层级作业. 请在适当的层级开启表格.

 

 

-32130  在指定层级内没有记录.

 

此讯息只有应用在多层级安全应用程序. 在您正存取的层级中没有记录存在.

 

 

-32131  内部的堆积错误.

 

此讯息表示内部错误.

 

 

-32132  无法依照标签排序.

 

依照卷标排序是不合法的, 因为卷标不是线性排列.

 

 

-32133  授与表格层级权限的会期层级不合法.

 

您的会期区分层级必须和表格区分层级相同.

 

 

-32134  授与数据库层级权限的会期层级不合法.

 

您的会期区分层级必须和数据库区分层级相同.

 

 

-32135  废弃表格层级权限的会期层级不合法.

 

您的会期区分层级必须和表格区分层级相同.

 

 

-32136  废弃数据库层级权限的会期层级不合法.

 

您的会期区分层级必须和数据库区分层级相同.

 

 

-32137  没有变更权限可以修改限制.

 

变更限制需要在表格上有变更的权限.

 

 

-32138  无法设定初始 SERIAL 值.

 

此讯息只能应用在多层级安全应用程序. 在表格建立时没有设定初始序列值.

 

 

-32139  没有设定 SERIAL 栏的初始值.

 

此讯息只能应用在多层级安全应用程序. 在您正在作业的区分层级中, 没有初始

序列值存在. 若SERIAL 栏出现在表格中, 必须在表格建立时设定初始序列值.

 

 

-32140  档案控制和 tabid 不一致.

 

此讯息表示内部错误. 对其 tabid 亦是作为函数自变量的表格而言, 提供给 ISAM

函数的表格控制不是合法的.

 

 

-32154  DBSSO 必须拥有 label. map 檔.

 

请确定在 $LABELMAPDIR 目录中, 没有其他使用者建立的 label. map 檔.

请检查 label. map 文件的区别标签是否为 ixdbssoL.

 

 

-32155  tbload 被锁定, 请移除 label.lok 檔.

 

旧的 label.map 檔正在使用中, 必要时请更新 label.map 檔, 并且移除

label.lok檔, 以指出并行的 label.map 档案确实可用.

 

 

-32156  无法开启档案.

 

无法开启 label. map 檔或 label. lok 檔. 请检查这些档案的存在与否, 以及

访问权限和区分层级 .

 

 

-32157  在 label. map 档案中的数据不正确.

 

请依照现有的操作系统, 检查在 label. map 文件中项目的整合性和合法性.

 

 

-32158  映像附笺没有存在于系统中.

 

在 label. map 文件中提供的磁带上附笺之转译附笺, 没有存在于操作系统中. 请

依照现有的操作系统, 检查在 label. map 文件中项目的整合性和合法性.

 

 

-32159  映像附笺没有存在于操作系统中.

 

在 label. map 档中提供的附笺没有存在于磁带上. 请确定您只有提供在磁带上

附笺的映射.

 

 

-32160  无法排序 label. map 档案.

 

在排序 label. map 档案期间发生错误. 请检查 label. map 檔的整合性.

 

 

-32162  标签附笺重复.

 

附笺和其转译附笺必须是完全的一对一映像. 请检查 label. map 档案, 以找出

重复的附笺映射.

 

 

-32163  标签附笺不正确.

 

只有标签的附笺表示式才可储存在 label. map 档内. 请检查储存在 label.

map 档案内, 附笺的整合性和合法性.

 

 

-32164  建立会期共享内存时发生错误.

 

这个讯息表示内部错误. 请检查操作系统错误讯息. 若是由共享内存的大小

所造成, 您或 DBSA可能在会期组态档中, 替 SM_ROWSIZE 或 SM_TOTALROWS

设定较高的值.

 

 

-32165  连接至会期共享内存时发生错误.

 

这个讯息表示内部错误. 请检查操作系统错误讯息, 以得到更多信息.

 

 

-32166  RSAM 无法由现有使用者找到或执行.

 

检查 $INFORMIXDIR 和 $SQLEXEC 的设定. 确定您是位于 ix_users,ix_dbsa

或 ix_dbsso群组中. 请检查在 $INFORMixDIR/lib 中可执行的 ISAM 是否也能

在您的会期中执行.

 

 

-32167  表格卷标不一致.

 

这个讯息表示内部的错误.

 

 

-32168  数据库卷标不一致.

 

这个讯息表示内部的错误.

 

 

-32169  无法在内部和外部画面表格间转换卷标.

 

这个讯息表示内部错误. 操作系统无法在内部和外部的画面表格卷标间映像.

请检查您提供的外部或附笺表示法.

 

 

-32181  估计安全标签数目必须大于零.

 

请检查在 TBCONFIG 档的参数设定对 DB-Monitor 的输入.

 

 

-32182  不正确的估计安全卷标 '卷标-名称' .

 

请检查在 TBCONFIG 档的参数设定或对 DB-Monitor 中的输入设定, 以确定

估计安全标签数目永远大于零.

 

 

-32183  LUB 计算失败.

 

请检查输入至 LABELLUB() 函数的合法性.

 

 

-32184  GLB 计算失败.

 

请检查输入至 LABELGLB() 函数的合法性.

 

 

-32190  无法累积标签栏.

 

请检查是否提供卷标栏给累积函数.

 

 

-32191  无法变更表格.

 

变更表格失败. 请检查其他的 ISAM 错误讯息, 以得到更多的信息.

 

 

-32193  无法建立稽核 tblspace.

 

OnLine/Secure 数据库服务器无法初始化. 请写下所有细节, 并联络 Informix 技

术支持部门.

 

 

-32194  无法建立保留的 tblspace.

 

OnLine/Secure 数据库驱动程序无法初始化. 请写下所有细节, 并联络Informix

技术支持部门寻求协助.

 

 

-32197  不是 OnLine/Secure 磁带.

 

请使用 OnLine/Secure 数据库驱动程序产生的磁带.

 

 

-32198  不是 OnLine/Secure 的 root 闲置区块.

 

请修改 TBCONFIG 档案以参考 OnLine/Secure 数据库服务器建立的 rootdbs.

 

 

-32400  Table_option 已经变更.

 

您对每个 ALTER TABLE 会期只能修改一个表格选项 (锁定模式, 范围大小).

若您已经变更一个表格选项, 而又想变更另一个, 您必须先结束 ALTER TABLE

选单, 并建立一个已修改的表格. 请选择 '结束' 选项, 然后选择 '建立新表格'

选项. 接者, 在 ALTER TABLE 选单上选取 Table_option 选项, 并对您的表格

做下一项修改.

 

 

-32401  当变更表格时, 初始范围大小将无法改变.

 

当第一次建立表格时, 初始范围大小就设定. 下一个范围大小可以更改, 但

初始的范围大小则不行. 若要变更初始范围的大小, 您必须从表格释放数据,

移除表格, 以 CREATE TABLE 叙述重新建立表格, 然后重载数据到表格中.

 

 

-32402  当变更现有的表格时, 用户无法变更 dbspace 名称.

 

您已经指定表格储存的位置, 并已明确指定 dbspace 或已使用的数据库之

dbspace. 当您尝试变更表格时, 您亦尝试变更在表格储存所在的 dbspace. 这是

不合法的. 只有在您建立表格时才可以指定 dbspace.

在现有的表格中下载任何数据. 移除该表格, 并建立一个新的表格. 指定您想

要的 dbspace使用, 并上载数据至新的表格.

 

 

-32403  使用了不合法的序列长度.

 

当用户建立或变更表格, 以及建立或变更序列类型栏时, 但是指定起始数目小

于等于零(不合法), 或者键入一个非数值的值时, 所发生的错误,. 请键入大于等

于 1 的起始值.

 

 

-32404  不合法的分界符号. 请不要用 '\\',

十六进制数字, tab 或空白.

 

指定给 LOAD 或 UNLOAD 叙述的分界符号不合法.

您无法使用换行字符,

十六进制数字(0 to 9, A to F, a to f), tab 字符或空白做为分界符号.

请检查叙述并

变更分界符号.

 

 

-32405  不正确的十六进制值.

 

使用在加载 BYTE 值到表格的十六进制文件中, 有不合法的字符或不正确的十六

进位值. 请检查任何异常, 然后重试执行您的叙述.

 

 

-32406  数值必须大于零.

 

当您建立或变更表格时, 所指定的范围尺寸小于等于零. 请指定大于零的范围尺寸.

 

 

-32407  找不到触发器.

 

您指定了不合法的触发器名称. 请键入现有的触发器名称, 或更正您的

拼法.

 

 

-32408  无法在没有指定交易之登录路径名称时, 建立 MODE ANSI 数据库.

 

您尝试在 INFORMIX-SE 上建立与 ANSI 兼容的数据库, 但没有指定路径名称给

委任的无缓冲区交易登录. 请再次选择 DB-Access 的 Mode_ansi 选项, 或者修订

您的 CREATE DATABASE 叙述, 然后键入整个登录路径名称.

 

 

-32409  数据不可使用, 无法开启数据库 sysmaster.

 

DB-Access无法从你要求的讯息中开启 sysmaster数据库. 检查 sysmaster 数据库是否设

立正确, 并读取错误登录寻找失败的原因.

 

 

-32410  DB-Access 没有支持语法.

 

即使数据库服务器有支持的情况下, DB-Access 亦没有支持 AS, WITH CURRENT

TRANSACTION, 或 CONNECT 叙述的

USER 子句. 当您在 DB-Access 中执行 CONNECT 叙述

时, 请使用适当的 SQL 叙述语法.

 

 

-32500  使用者没有个别的权限可以变更会期层级.

 

您在其中使用 SET SESSION LEVEL 叙述的会期开始之前, 您必须要获得来自

DBSSO 的 PRIV_CANSETIDENTITY 个别的权限.

 

 

-32501  上线会期层级并不支配新的会期层级.

 

您必须在您所指定的会期层级,它所支配的会期分配层级中上线.

 

 

-32502  新会期层级不支配数据库层级.

 

您无法在新会期区分层级存取数据库. 请使用可支配数据库的不同层级.

 

 

-32503  用户表格应该关闭, 以变更会期属性.

 

在尝试变更会期区分属性之前, 请关闭所有表格和撤回所有依然开启的游标.

 

 

-32504  在远程对象的作业不允许在会期层级设定之后.

 

当您的现有区分层级与登录会期不同时, 您无法存取在远程数据库的对象. 请返

回您的登录会期之区分层级, 来存取远程数据.

 

 

-32505  无法设定会期层级.

 

请参考随后的错误讯息, 以得到更多信息.

 

 

-32506  不良的会期标签格式.

 

SET SESSION LEVEL 叙述的自变量不是合法的区分标签.

 

 

-32507  无法设定会期授权.

 

除非您正在变更自身的会期, 否则您必须是 DBA 才可以变更会期的使用者.

 

 

-32508  叙述在交易中不合法.

 

在发出 SET SESSION AUTHORIZATION 或叙述之前, 请中止

或确认交易.

 

 

-32509  坏的会期授权格式.

 

提供给 SET SESSION AUTHORIZATION 叙述的自变量的使用者名称无效, 请提供正确使用者的

使用者 ID.

 

 

-32510  使用者没有个别的权限可以变更会期授权.

 

您在其中使用 SET SESSION AUTHRORIZATION 叙述的会期开始之前, 您必须要

获得来自 DBSSO 的 PRIV_CANSETIDENTITY 个别的权限.

 

 

-32513  无法为表格或栏更名.

 

为表格或栏更名的动作失败. 详细的信息, 请参考 ISAM 错误讯息.

 

 

-32514  会期层级与数据库对象的层级不同.

 

您的会期敏感度标签不准您针对正在存取的 OnLine/Secure 对象执行任何操作,

因为它违反了 OnLine/Secure 的 MAC 原则. 请在适当的敏感度标签登入,

然后再操作一次.

 

 

-32520  无法建立 SL 映射 tblspace.

 

此讯息指出内部错误.

 

 

-32521  无法建立 IL 映射 tblspace .

 

此讯息指出内部错误.

 

 

-32522  无法建立 Datalo 转译.

 

此讯息指出内部错误.

 

 

-32523  无法建立 Datahi 转译.

 

此讯息指出内部错误.

 

 

-32524  无法建立 ixdataH 转译.

 

此讯息指出内部错误.

 

 

-32525  无法建立已存档转译.

 

此讯息指出内部错误.

 

 

-32526  已存档和已储存附笺不相通.

 

此讯息指出内部错误.

 

 

-32528  找不到附笺.

 

此讯息指出内部错误.

 

 

-32529  无法建立 ixdbsaL 转译.

 

此讯息指出内部错误.

 

 

-32766  未知的错误讯息号码.

 

软件产品无法找到错误讯息本文文件. 不是 INFORMIXDIR 就是 DBLANG 环境变量设

定不正确.

 

 

-33000  关键词为保留的 ANSI 关键词.

 

此讯息只是警告. 若您想要符合 ANSI 标准的码, 不要使用作为变量名称的关键词.

请检查 Informix Guide to SQL: Syntax 以得到替代的语法.

 

 

-33001  环境 '变量-名称' 的变量有不合法的值.

 

重设指定的环境变量为合法值, 然后再试试看. 请参阅 Informix       Guide

to SQL:Reference 的第四章.

 

 

-33002  在 ESQL INCLUDE 叙述中语法错误.

 

预处理器无法解译此   INCLUDE   叙述.   请参考您的嵌入语言手册以得到

INCLUDE 叙述的正确语法.

 

 

-33003  不良的标签格式.

 

现有叙述上的卷标, 在画面表格中并不正确. 请参考嵌入语言手册以得到可接受

的标签格式.

 

 

-33004  '选项-名称' 的选项不存在或有不良格式.

 

此嵌入语言产品不支持预处理器/编译程序指令列中指定的选项.

请检查其拼法跟您想要的拼法一样. 关于支持的选项, 请参考嵌入

语言手册.

 

 

-33005  不完整的字符串.

 

字符字符串未依照宿主语言规则做正确的终止. 例如, 它可能遗漏结束引号, 没有

连续字符等等. 除非有一些来源行超出您希望字符串结束之处, 否则预处理器

可能无法辨识出错误.

 

 

-33006  变量名称的类型不适合这样的用法.

 

您不能在此叙述内使用指定的变量. 请检查是否您所指定的变量就是所要的,

并以合适的类型宣告. 然后再参考嵌入语言手册, 以得到在此种类型叙述的变量

用法.

 

 

-33007  '$' 假设在变量名称前.

 

预处理器假设您希望把此叙述中的符号变量名称作为主机变量. 主机变量

之前通常以 '$' 或 ':' 来表示. )请检查是否您真的打算如此做.

 

 

-33008  记录组件 '组件-名称' 尚未宣告.

 

此叙述将符号 '组件名称' 当作记录组件的名称来使用, 但没有宣告成所使用

的记录名称组件. 请检查组件和记录名称的拼法.

 

 

-33009  已使用 '组件-名称' 的组件名称.

 

记录组件在相同记录 / 结构中宣告两次. 请检查组件的名称拼法和宣告语法.

 

 

-33010  内部错误: 预处理器状态毁损.

 

请更正所有其他处理的错误. 若这错误再度发生, 请记下所有的情况, 并且联络

Informix 技术支持部门.

 

 

-33011  现有变量名称的宣告隐藏了以前的宣告.

 

这讯息是从预处理器发出的警告. 在现有范畴中, 指定的变量宣告超过一次.

编译过程持续使用这最后的宣告, 至现有范畴的末尾. 若您不打算重新宣告指定过

的变量, 请检查变量名称的拼法和宣告的语法. 在 INFORMIX-ESQL/C 中, 若是变

数用为函数参数, 此警告亦可能会衍生出来. 在此种情况下请使用 PARAMETER

子句.

 

 

-33012  数字数目必须从 1 到 32.

 

您已经指定给 DECIMAL 值的精准度或大小超出范围. 一个 DECIMAL 变量的数字

数目必须从 1 到 32. 请检查在此叙述中宣告的标点.

 

 

-33013  END DECLARE SECTION 没有 BEGIN.

 

预处理器已经发现此 EXEC SQL END DECLARE SECTION 叙述, 但却没看到之

前的 EXEC SQL BEGIN DECLARE SECTION. 之前的叙述可能省略, 或因为另

一个错误而无法辨识出. 请确定每个 BEGIN DECLARE 都有成对的 END DECLARE .

 

 

-33014  记录/结构 '变量-名称' 的不合法使用.

 

指定的记录使用在当只有接受简单变量处. 请检视 '变量名称' 的宣告并确定其

是否为您打算使用的变量(可能您需要附上组件名称). 请参考嵌入语言手册以

得到此叙述的要求.

 

 

-33015  输入档名有不合法的字尾 '字尾-文字' .

 

传给预处理器的输入档名称必须有正确的字尾. 请检查指令语法, 然后若有必

要则替档案更名. 下列档案字尾是需要的:

*       .ec 给 INFORMIX-ESQL/C

*       .eco 给 INFORMIX-ESQL/COBOL

*       .ef 给 INFORMIX-ESQL/FORTRAN

 

 

-33016  对 '宏-名称' 的宏定义不完全.

 

此预处理器宏定义叙述没有 ESQL 叙述终结器. 请加入分号 (;) 至叙述末尾.

 

 

-33017  不完全的叙述.

 

预处理器无法辨认目前叙述之结尾. 请检查此行和之前数行的语法. 寻找略掉

的结束分号, 略掉的引号, 或略掉的批注末尾符号.

 

 

-33018  在此子句中不允许指示器变量.

 

此叙述包含一个有指示器变量的主机变量规格, 但在此内容中不允许指示器变

数. 请检视每个指示器变量的用法, 然后移除掉不必要的.

 

 

-33019  标签太长.

 

此叙述指定一个比此嵌入语言所允许的长度还长的标签. 请检查此叙述的拼法和

标点. 请参考嵌入语言手册以得到适当的卷标名称型式.

 

 

-33020  行太长.

 

此行无论是对宿主语言, 或是预处理器的内部缓冲区而言都太长. 请参考嵌

入语言手册和宿主语言手册, 以得知接续长行的规则.

 

 

-33021  宏 '宏-名称' 的值太长.

 

指定给宏的值太长, 以致于无法放入内部缓冲区. 缩短叙述后再试试看.

 

 

-33022  包含的路径名称太长.

 

在 INCLUDE 叙述中, 路径名称太长以致于不能填入内部缓冲区. 检视叙述的标

点; 或许结束引号被忽略掉. 如果不是的话, 您必须找到一个方法, 以较短

的路径名称来指定所包含的档案. 请参考嵌入语言手册的预处理器来找

寻包含文件的规则.

 

 

-33023  对 SQL 来说, 引号内字符串太长.

 

引号内字符串太长, 以致于无法放在内部缓冲区中. 请检查叙述是否遗漏了结束

引号.

 

 

-33024  期待有宏名称.

 

在宏叙述中没有宏名称, 指定名称后再试试看.

 

 

-33025  名称的标识符太长.

 

指定的 SQL 标识符太长. SQL 标识符限制为 18 个字符. 请检查叙述的标点及

标识符的拼法; 如果都没有问题, 则您必须使用较短的名称来改变宣告.

 

 

-33026  区块的巢状不可超过 n 层.

 

预处理器限制巢状层数为一指定值的数量. 请检视这一点之前的程序结构; 标

点符号或关闭区块的关键词会被略过, 或者因为先前的错误而无法辨认. 如果

都没有问题, 则您必须使用较少的巢状区块重新组织程序代码.

 

 

-33027  记录巢状太深. 最大值为 n.

 

预处理器限制了记录(数据结构)可以为巢状的层级. 从此点往回重新检视记

录宣告. 可能略掉了用来关闭纪录的标点或关键词, 或因为以前的错误造成无法

分辨. 如果都没有问题, 则必须简化数据结构.

 

 

-33028  不合法 '编译程序-名称' 的编译程序之 '编译程序-类型-名称' 的类型.

 

编译程序类型必须以指令列选项, 指定至此预处理器. 请参考嵌入语言手册.

 

 

-33029  没有给输入档.

 

没有在指令列上指名输入文件.

 

 

-33030  在 SCROLL 游标上不能拥有插入叙述.

 

此 DECLARE 叙述指定 SCROLL 关键词, 但其继续指定 INSERT 叙述. 插入游标

无法使用 SCROLL 关键词.

 

 

-33031  叙述标签不允许在此叙述中.

 

这讯息只是警告. 您已经使用一个在输出档中, 不会产生任何真实码的叙述之标签.

请参考嵌入语言手册以得到正确的标签使用法.

 

 

-33032  WITH NO LOG 只能指定给 TEMP 表格.

 

您在错误的上下文中, 使用 WITH NO LOG 选项. 它只能使用在当您想建立一个

TEMP 表格并剔除交易登录作业的时候.      请参阅 Informix Guide to SQL: Syntax

中的 SQL 语法, 和适当的 WITH NO LOG 选项使用方法.

 

 

-33033  字段 '字段-名称' 是 Informix 对 XPG3 X/Open 标准的扩充.

 

这只是警告. 您用 -xopen 选项要求在编译时, 用 XPG3 X/Open 标准检查原始

檔. ITYPE, IDATA 和 ILENGTH 域名是 Informix 对标准的扩充.

 

 

-33034  POWER 游标无效.

 

不支持 POWER 游标. 请参考您的嵌入语言手册.

 

 

-33035  没有指定一个限定符

 

您尝试不指定对限定符可接受值的特定范围, 而使用日期时间的限定符. 定义您

将使用的范围来限定日期时间的限定符. 日期时间限定符必须有开始和结束的范

围(例如, 年至月, 天至小时, 等等).

 

 

-33036  此行没有遵循 ANSI X3.135-1989 标准.

 

这讯息只是警告. 您用 -ansi 选项要求在编译时, 用目前的 ANSI 标准检查原始档.

此叙述使用 Informix 对 ASCII 标准的扩充.

 

 

-33037  名称不是 '记录-名称' 的记录之组件.

 

'名称' 是用在如同 '记录-名称' 的记录, 但没有此名称的成员. 请检查两名

称的拼法, 并检视 '记录名称' 的宣告.

 

 

-33038  此叙述没有遵循 X/Open 标准.

 

这讯息只是警告. 您可以用 -xopen 选项要求在编译时, 用 XPG4 X/Open 标准

检查原始档.

 

 

-33039  不允许在单一个选取上更新.

 

您有 UPDATE 叙述, 和只传回一列的 SELECT 叙述结合在一起. UPDATE 叙述需要

一个已经有 FOR UPDATE 宣告的光标. 关于光标的更多信息, 请参阅

Informix Guide to SQL: Syntax 中的 DECLARE, SELECT 和 UPDATE 叙述.

 

 

-33040  对象 hostvar 没有宣告.

 

主机变量 hostvar 不是没宣告就是拼法错误. 若 hostvar 没有以主机变量宣告

的话, 请宣告它. 否则, 请更正错误的拼法.

 

 

-33041  无法开启的输出档 '输出档' .

 

预处理器无法开启输出档, 因为没有足够的可用磁盘空间, 或您没有文件系统存

取权限来开启此档. 若可用的磁盘空间不够, 请以删除档案或选择另一个磁盘的

方法在文件系统内滕出可用的空间. 若您没有文件系统访问权限来开启输出档,

请以所需的访问权限指定另一个目录或登入.

 

 

-33042  无法开启的输入档 '输入档'.

 

嵌入语言预处理器无法放置您想尝试以 -I 选项包含在程序中的档案. 检查档

案是否在您指定的位置上, 然后指定正确的位置. 同时也请检查您是否有存取权

限来开启输入档; 若没有, 则以所需的访问权限指定另一个目录或登入.

 

 

-33043  内存不足.

 

预处理器无法配置更多的内存. 若可能的话, 减少和预处理器同时进行的处

理数目, 或缩小程序的大小. 请检查是否有适当的交换磁盘空间. 在 DOS 系统中,

您必需释放一些磁盘空间.

 

 

-33044  精准度必须大于零, 而小于指定的数字数目.

 

您指定了错误的精准度和 / 或大小给一个 DECIMAL 值. 请参阅 Informix

Guide to SQL: Reference 第三章和适当的 INFORMIX-ESQL 手册, 以找出适合的使

用方法.

 

 

-33045  覆写先前定义的宏 '宏-名称' .

 

这讯息只是警告. 您已经定义 '宏-名称' 的宏超过一次. 预处理器将使用最

近出现的宏名称.

 

 

-33046  指示器无法与记录合用.

 

这讯息只是警告. 您无法指定指示器变量, 作为主机或数据结构的输入. 将忽略

指定的指示器. 指示器变量必须与单一数据元素有关. 若您需要以此记录的特别

成员,来使用指示器的话, 您必须列示出所有记录的成员.

 

 

-33047  记录 '记录-名称' 在此子句中不允许.

 

在此叙述中, 您使用只允许单一变量的指定记录. 请检查名称的拼法并使用简

单变量重写叙述. 请参阅嵌入语言手册和 Informix Guide to SQL: Syntax.

 

 

-33049  字段类型 '字段-名称' 的使用超出上下文之外.

 

指定的域名在 GET/SET DESCRIPTOR 叙述中使用错误. 请参阅在

Informix Guide to SQL: Syntax 的 GET DESCRIPTOR 和 SET DESCRIPTOR 叙述,

以找到正确的语法.

 

 

-33050  已使用类型或子类型 '类型-名称'.

 

叙述重新定义一个已定义的使用者定义类型或子类型. 这是不允许的. 请

检视宣告, 并给此类型单一的名称.

 

 

-33051  在标识符或符号 '符号-名称' 上的语法错误.

 

在 '符号名称' 上或其附近发现语法错误. 请检查 Informix Guide to SQL:

Syntax 以找出标识符的适当用法, 和嵌入语言手册找出其他符号的合适用法.

 

 

-33052  不符的 ELSE.

 

ELSE 叙述没有匹配的 IFDEF 和 IFNDEF 叙述在其之前. 请检视在此点之前

的原始行: 可能省略之前的叙述, 或可能因为先前的错误而无法辨识.

 

 

-33053  不匹配的 ENDIF.

 

ENDIF 叙述没有 IFDEF 和 IFNDEF 叙述在其之前. 请检视在此点之前

的原始行: 之前的叙述可能省略, 或可能因为先前的错误而无法辨识.

 

 

-33054  不允许在卷动光标上更新.

 

这个 UPDATE 叙述参考了以 SCROLL 关键词宣告的光标. UPDATE 叙述需要一个

已经宣告 FOR UPDATE 的光标, 来确定适当的锁定层次应用到将更新的列中.

请参阅在 Informix Guide to SQL: Syntax 中的 DECLARE 叙述, 以得到正确的游

标使用信息.

 

 

-33055  已使用名称 'id-名称'.

 

SQL 标识符 id-name 已宣告. 请检查在目前名称范畴的名称拼法和宣告.

 

 

-33056  在输出期间发生错误 errno .

 

在输出期间发生错误 errno. 确定有足够的磁盘空间给输出文件, 并且对档案位置

拥有必要的文件系统访问权限. 请在主机操作系统手册中(或参阅从 17 页开始

的清单)找出问题的原因和适当的改正动作.

 

 

-33057  无法开启错误登录档案 '错误档'.

 

您必须指定登录预处理器选项, 让错误和警告讯息传至错误文件, 代替标准输

出. 然而, 预处理器无法开启错误档, 因为没有足够的可用磁盘空间, 或没

有文件系统访问权限来开启档案. 若没有足够磁盘空间可使用, 请用删除档案或

选择另一个磁盘的方法, 在文件系统中滕出可用空间. 若您没有文件系统存取权

限来开启错误档, 请以要求之档案权限, 指定另一个目录或登录.

 

 

-33058  '选项-名称' 对栏定义不是合法默认选项.

 

请参阅 Informix Guide to SQL: Syntax 在栏定义中合法的 DEFAULT 子句选项.

 

 

-33060  不合法的表达式.

 

指定的表达式不正确. 请参考 Informix Guide to SQL: Syntax 有关此表达式的正

确语法和使用方法.

 

 

-33061  无法扩展递归的宏 '宏-名称' .

 

预处理器无法完全扩展 '宏-名称' 的宏, 因为在定义的宏中有循环.

请更正错误的宏并再试试看.

 

 

-33062  遗漏 ENDIF .

 

您有一个 IFDEF 或 IFNDEF 叙述, 在原始档结尾之前却没有相对的 ENDIF 叙

述. 从档案最后往前找, 以确定每个 IFDEF 和 IFNDEF 叙述有成对的

ENDIF . 可能是由于另一个错误造成 ENDIF 无法辨识.

 

 

-33063  已经在 BEGIN DECLARE SECTION 之间.

 

这讯息只是警告. 您有 EXEC SQL BEGIN DECLARE SECTION 叙述在另一个

BEGIN/END DECLARE 区块内. 会忽略此叙述. 然而, 此警告可能指出程序结构

中有混杂的现象. 请检查宣告区段并确定它们适当分界了.

 

 

-33064  '变量-名称' 已经以不同的字体出现. ESQL/语言-名称为不区分大小写的.

 

这讯息只是个警告. 指定变量以大小写字母的不同组合出现超过一次. 因为此产品

不区分大小写, 所有这些名称将视为同一个. 若您打算让这些名称分别表示

不同的变量, 请变更其中变量宣告的名称(不仅仅是字体), 然后再重新编译.

 

 

-33065  光标/叙述之 id 名称以模块名称为开头时太长.

 

这讯息只是警告. 当您使用 -local 前置处理选项, 光标名称和叙述名称将从以模块

名称产生之唯一的附笺做为前缀. (在 UNIX 系统上, 原始程序的 inode 数被当成

单一附笺.)光标名称或叙述名称加上单一附笺合起来的长度, 不应超过 18 个字

元, 但在此却发生. 所以若在不同原始模块中使用相同名称, 这两个名称可能

在 -local 选项要求上区别的不够清楚.

 

 

-33066  光标/叙述之 id (id1 和 id2)在以模块名称为开头的前 18 个字符

不是唯一的.

 

当您使用 -local 前置处理选项,   光标名称和叙述 ID 将以从模块名称产生的唯一

附笺做为前缀. (在 UNIX 系统上, 原始程序的 inode 数被当成唯一附笺. )在此

种情况中, id1 和 id2 至少有 14 个字符长, 而且前 13 个字符是一样

的. 所以, 当附笺加入而结果截断到只有 18 个字符时, 将会完全相同. 请变

更两名称以避免名称冲突, 然后再试试看.

 

 

-33067  ELIF 没有相对的 IFDEF .

 

此 ELIF 叙述前没有 IFDEF 或 IFNDEF 叙述. 请检视在此点之前的原始行;

可能省略之前叙述, 或可能因为先前的错误而无法辨识.

 

 

-33068  ELIF 在 ELSE 之后.

 

ESQL 预处理器的 ELSE 叙述, 表示 IFDEF 或 IFNDEF 叙述的最后部份:另一

个 ELIF 部份可能没有在其之后. 请检视 IFDEF 或 IFNDEF 叙述的内容, 然

后照顺序排放各个部份.

 

 

-33070  在叙述剖析期间堆栈溢出

 

这个讯息表示剖析器堆栈已经溢位, 这是很少发生的. 例如可能您的嵌入语言

叙述(SELECT, INSERT, UPDATE, DELETE 等)包含非常大或复杂的子句

WHERE, MATCHES, LIKE 等), 在剖析器尝试进行时所发生. 这种情况下, 您

必须分开此子句后, 再试一次.

 

 

-33200  在符号 '变量-名称' 上有不合法的叙述.

 

指定的类型无法定义, 或是 $ 字符在叙述中放置错误. 请检查是否有拼错, $ 字符

放置错误或没有定义的类型等情况.

 

 

-33201  不允许固定的字符指针.

 

不允许 fixchar 字符指针在此上下文中. 用字符指针取代 fixchar 指针.

 

 

-33202  在数组变量 '变量-名称' 上有不正确的维度.

 

您使用错误维度来参考数组变量. 请修正维度并且再试试看.

 

 

-33203  在变量 '变量-名称' 上有不正确的间接层级.

 

一个指针变量使用在错误的间接层级数. 请检查在此叙述中的间接层级.

 

 

-33204  右大括号发现没有相对应的左大括号.

 

此程序代码不是包含一个多余的右大括号 (}), 就是少了一个左大括号 ({). 检视

此程序代码是否有没对应的大括号, 或不正确的标点符号, 例如漏掉结束引号或

结束批注.

 

 

-33205  PARAMETER 无法在 C 区块内使用.

 

PARAMETER 叙述只允许在函数宣告区块中, 无法在函数中的巢状区块间使用.

 

 

-33206  给 '变量-名称' 的限定符没有初始化.

 

这讯息仅是个警告. 起源于指定的 DATETIME 或 INTERVAL 变量, 其元素的限定符

无法适当的初始化. 编译继续进行但变量没有初始化.

 

 

-33207  类型 'typedef-名称' 对 ESQL/C 太复杂.

 

typedef 变量的定义太复杂. ESQL/C 无法在 typdef 中支持使用多维数组或联

集. 请简化 typedef.

 

 

-33208  执行期时的错误可能发生, 因为 '主机-变量-名称' 的大小未知.

 

这讯息仅是警告: 编译将继续. ESQL/C 不知道主机字符变量的大小. 若变数是

使用在 INTO 子句, 内存可能被覆写. 以数字大小来指定变量为字符数组. 数字

大小可以是文字值或 ESQL/C 宏值.

 

 

-33209  叙述必须以 ';' 做结束.

 

这讯息是警告. 此叙述没有必须要有的分号. 即使预处理器可以顺利进行, 但您仍

应该将分号加入叙述中. 这将使您避免未来程序代码加入此程序时发生错误.

 

 

-33500  '文件名' : 行数上有不良的环境变量.

 

在指定环境组态档中的指定行上的输入项不正确. 修改在档案中的输入项(环

境变量名称和 / 或设定), 然后再试试看.

 

 

-33501  找不到 DBAPICODE 的映像档案.

 

SQL API 无法找到字符映像文件, 给指定的 DBAPICODE 环境变量设定和标准码设

定. 请检查映像码设定是否存在于您所要平台的讯息目录中. 在 NLS-ready 系统中,

标准码设定是定义在 LANG 环境变量中. 在系统不是 NLS-ready 时, 标准码

设定的默认值为 8-bit 字符集.

 

 

-33502  映像档没有正确格式.

 

指定的 DBAPICODE 环境变量的映像文件格式不正确. 字符映像表格的本文文件, 可

以包含任何行数. 一行可以是批注, 或是 DBAPICODE 字符码对目标内码集字符

的一对一字符映像. 本文档必须以 US ASCII 或相当于 US ASCII 重要字符(#,

括号, 数字字符)的内码集编写.

 

 

-34380  输入数据流包含一个不合法的多字节字符.

 

ESQL/C 原始码含有不合法的多字节字符. 请检视源文件.

 

 

-34381  输入数据流结束于有效字符中间.

 

ESQL/C 源文件结束于有效多字节字符中间. 源文件可能截断.

请检视源文件.

 

 

-34382  读取输入数据流时发生系统错误.

 

ESQL/C 预处理器读取 ESQL/C 源文件时发生系统错误 num.

请查询操作系统讯息以找出问题的主要原因.

 

 

-34383  读取输入数据流时发生未知的错误 num.

 

ESQL/C 预处理器读取 ESQL/C 源文件时发生未知的错误 num.

请检查源文件是否确实为有效的 ESQL/C 源文件.

 

 

-34389  在输入字符串中找到不合法的字符.

 

SQL 脚本含有不合法的字符. 请检视脚本档案.

 

 

-34390  无效的分界符号;请勿使用 '\\',SPACE、十六进制或

多字节字符.

 

FILE 叙述指定的分界符号是不合法的.您不能

使用换行字符、反斜杠、空白、定位点、十六进制数字

(0 到 9、A 到 F、a 到 f),或多字节字符作为分界符号.

请检查叙述,然后变更分界符号.

 

 

-34393  GLS 内码集转换初始化失败.

 

在会期初始化时内码集转换初始化失败. 没有足够的内存可供内码集转换

表格使用.

 

 

-34394  会期初始化因不当的区域化环境名称而失败: 区域化环境-名称

 

会期初始化失败. 在会期初始化时提供给区域化环境初始化使用的区域化环境名称是

无效的. 指定区域化环境名称的环境变量具有错误的值.

请检查相对环境变量 CLIENT_LOCALE 或 DB_LOCALE 的值.

 

 

-34395  不合法的多字节字符. 行# num

 

在可加载的选单源文件此行上侦测到不合法的多字节字符.

请检视源文件.

 

 

-34396  不合法的宽字符. 行# num

 

此内部错误指出内部宽字符格式转换成多字节字符的动作失败.

请检查程序逻辑.

 

 

-35036  此行对接近标识符或符号名称使用 Informix 对 ISO/ANSI SQL 的扩充.

 

当您使用 -ansi 选项时, 这个错误讯息才会发生. 修订叙述以符合 ANSI 标准.

 

 

-35038  叙述对标识符或符号名称使用 Informix 对 X/Open 标准的扩充.

 

当您使用 -xopen 选项时, 这个错误讯息才会发生.   修订叙述以符合 X/Open 标准.

 

 

-35200  严重剖析错误; 字符串

 

若您得到此错误讯息, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-35201  光标名称必须为标识符

 

在 DECLARE CURSOR 叙述中的游标不是标识符. 可能是主机变量, 而必须变更为

合法的游标标识符.

 

 

-35202  太多巢状区块

 

若您得到此错误讯息, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-35203  光标 '光标-名称' 已定义.

 

游标定义超过一次. 您只可以对每个光标 id 使用一个光标. 请重新命名游标名

称, 使其在模块之间为唯一的名称. 唯一的游标加强可移植性.

 

 

-35204  程序 '程序-名称' 已经定义

 

您使用的程序名称已经定义. 请重新命名程序名称, 使其在模块间为唯一的名称.

 

 

-35205  参数 '参数-名称' 已经定义

 

您使用一个参数名称超过一次. 在每个程序中的参数名称必须是唯一的. 请重新

命名参数名称, 使其在过程调用中为唯一的名称.

 

 

-35206  语言必须为 Ada, 而不是 '语言名称' .

 

您必须在 LANGUAGE 子句中使用 Ada 这个名称. 请移除 LANGUAGE 子句或变更语

言名称为 Ada. 请参阅 INFORMIX-Ada/SAME Programmer's Manual 的第二章,

以得到更多有关使用 LANGUAGE 子句的信息.

 

 

-35207  模块名称, '模块名称' , 与结束模块名称 '模块名称' 不符

 

跟在 MODULE END 子句后的名称必须与在 MODULE 名称子句中指定的模块名称

相符.

 

 

-35208  内部错误 '模块名称' , 行 '行号' : 字体错误

 

如果再次发生此内部错误, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-35209  内部错误: '模块名称' , 行 '行号' : 断言错误

 

如果再次发生此内部错误, 请记下所有的情况, 并且联络 Informix 技术支持部门.

 

 

-35210  内部错误: 特性名称尚未执行.

 

所有支持的特性都可执行. 如果再次发生此内部错误, 请记下所有的情况, 并且

联络 Informix 技术支持部门.

 

 

-35211  在指令参数后只能有一个单一的档名.

 

使用 adasame 指令. 请参考 INFORMIX-Ada/SAME Programmer's Manual 第

一章所提供的前

 

-35212  遗漏 -b 或 -s 选项

 

使用 -b 或 -s 选项. 请参考 INFORMIX-Ada/SAME Programmer's Manual 第

一章所提供的预处理器指令语法. 若这错误再度发生, 请记下所有的情况, 并且

联络 Informix 技术支持部门.

 

 

-35213  没有给程序名称宣告光标

 

SOL 叙述需要一个游标 id, 而此 id 不得在 DECLARE CURSOR 叙述中宣告. 请检查

是否拼法错误, 或替此光标加入 DECLARE CURSOR 叙述.

 

 

-35214  与 OPEN 一起使用的光标 '光标名称' 在一个以上的程序中使用.

 

游标只能在一个 OPEN 叙述中被参考. 请移除多重开启光标程序.

 

 

-35215  未定义主机变量或参数: '名称' .

 

已经制作一个参考到没有定义的主机变量或程序参数.

 

 

-35216  当 SQLCODE 出现在参数列中, 不允许 WHENEVER 子句.

 

请选择含 SQLCODE 的 ANSI 错误控制, 或者 Informix Ada 风格的错误控制.

 

 

-35217  ANSI X3.135-1989 需要语言子句.

 

ANSI 要求给予 LANGUAGE 子句. 当您发展符合 ANSI 标准的模块时, 指定 Ada

语言. 请参阅 INFORMIX-Ada/SAME Programmer's Manual 的第二章, 以得到更多

有关使用 LANGUAGE 子句的信息.

 

 

-35218  ANSI X3.135-1989 需要授权子句.

 

只有当您使用 -ansi 选项时才会出现此错误讯息. 加入 AUTHORIZATION 子句以符合

ANSI 标准. 请参阅 INFORMIX-Ada/SAME Programmer's Manual 的第二章, 以得

到更多有关使用 AUTHORIZATION 子句的信息.

 

 

-35219  ANSI X3.135-1989 需要至少一个 (SQLCODE) 参数

 

ANSI 标准要求每个程序必须至少有一个 SQLCODE 参数.

 

 

-35220  没有给光标名称 OPEN 程序.

 

叙述参考一尚未开启的游标. 请移除没有 OPEN 叙述的光标, 或为主题光标

加入 OPEN 叙述.

 

 

-35221  字符字符串参数不能有 OUT 模式: '参数名称'

 

CHAR(*) 和 VARCHAR(*) 参数不能作为 OUT 参数. 请变更参数为 CHAR[n].

 

 

-35222  不支持 CHAR(*) 参数 '参数名称' : 使用 VARCHAR(*) 及附加 ASCII.NUL

 

 

 

-35223  违法字 (offending word) 为语言保留字或类型标识符.

 

请变更保留字为非保留字.

 

 

-35224  INTO 词组不能出现在 DECLARE CURSOR 叙述中.

 

在 DECLARE 光标中使用 INTO 词组, 可能造成无法预测的执行时期错误.

Informix 建议将 INTO 词组移到 OPEN 和 / 或 FETCH 程序.

 

 

-35225  对象参考, '对象名称' , 无法出现在动态光标宣告中

 

请从动态光标宣告中移除参考对象.

 

 

-35226  此行对接近标识符或符号名称使用 Informix 对 ISO/ANSI SQL 的扩充.

 

已侦测到使用 Informix 对 ANSI 的扩充. 使用符合 ANSI 标准的语法以确保最

大可移植性.

 

 

-35227  此叙述对接近标识符或符号名称使用 Informix 对 X/Open 标准的扩充.

 

已侦测到使用 Informix 对 X/Open SQL 语法的扩充. 使用符合 X/Open

标准的语法以确保最大可携带性.

 

 

-41000  在读取 INFORMIX.INI 檔的 [INET_CONNECTION] 区段时发生错误.

 

请检查 INFORMIX.INI 檔的 [INET_CONNECTION] 区段, 以确定此区段拥有下列区

段标题:

[INET_CONNECTION]

 

 

-41001  INFORMIX.INI 档没有主机名或有格式错误.

 

请检查 INFORMIX.INI 檔. 若您没有在 InetLogin 结构中定义一个主机名变量

的话, [INET_CONNECTION]区段必须有使用者名称.主机名必须以此格

式定义在 [INET_CONNECTION] 区段中: host=hostname

 

 

-41002  INFORMIX.INI 档没有使用者名称或有格式错误.

 

请检查 INFORMIX.INI 檔. 若您没有在 InetLogin 结构中定义一个用户名称变

数的话, [INET_CONNECTION] 区段必须有使用者名称.使用者名称必须以此格

式定义在 [INET_CONNECTION] 区段中:

user=username

 

 

-41004  INFORMIX.INI 档没有协议名称或有格式错误.

 

请检查 INFORMIX.INI 檔. 若您没有在 InetLogin 结构中定义一个协议名称变量

的话, [INET_CONNECTION] 区段必须有协议名称. 协议名称必须以此格式定义在

[INET_CONNECTION] 区段中:

protocol=protocolname

 

 

-41005  在读取 INFORMIX.INI 檔的 [INET_PROTOCOL] 区段时发生错误.

 

请检查 INFORMIX.INI 檔的 [INET_PROTOCOL] 以确定此区段有下列区段标题:

[INET_PROTOCOL]

 

 

-41006  协议名称不在 INFORMIX.INI 檔的 [INET_PROTOCOL] 区段中.

 

请检查 INFORMIX.INI 檔. 在 [INET_CONNECTION] 区段中指定的协议名称必须与

[INET_PROTOCOL] 区段中所指定的协议名称相符合. 协议名称必须为所用的协议

定义出正确的.DLL 模块. 若您使用 IPX/SPX 协议, 则 ipx=INETIPX.DLL. 若您

使用符合 Windows Sockets 1.1 标准的 TCP/IP 协议, 则 tcpip=INETWSOK.DLL.

 

 

-41007  加载 INFORMIX-NET for Windows 函数馆时发生错误.

 

请检查您所设定的路径. 若您使用符合 Windows Sockets 1.1 标准的 TCP/IP

协定, 则 INETWSOK.DLL 模块必须在设定的路径中. 若您使用 IPX/SPX 协议, 则

INETIPX.DLL 模块必须在设定的路径中.这些模块必须在您所设定的路径中. 另

外, 您可能没有足够加载正确 DLL 模块的内存.

 

 

-41008  所使用的协议数目超出本版本所支持的协议数目.

 

您一次只能使用一个协议来与远程数据库服务器通讯.

 

 

-41009  关闭连接时发生错误.

 

在关闭连接时发生错误. 没有可更正的行动.

 

 

-41020  连接错误.

 

在窗口下有太多作业中的应用程序. 请关闭一些应用程序再试试看.

 

 

-41021  连接忙碌.

 

您正提出数据库服务器要求. 在完成目前的要求之前, 您不得使用其他自变量.

 

 

-47086  非 datetime 类型之数据域不可以目前时间为默认值.

 

当栏的数据类型不是 DATETIME 时, 您不可以用系统的目前时间 (current) 为其预设

值. 如果可以的话请变更该栏的数据类型为 DATATIME, 或指定一个不同的默认值

给此栏.

 

 

-47087  无法在栏不接受 null 时指定 null 为其默认值.

 

替该栏选择一个不同(非 null)的默认值, 或者修改该栏的定义使能接受 null 值.

 

 

-47088  此种类型的栏不可以用服务器或 site 作为其默认值.

 

当栏的类型不是 CHAR, NCHAR, VARCHAR, 或 NVARCHAR 时, 您不可以用现有的数据

库服务器名称或 site 名称为其默认值. 请变更栏数据类型(如果允许的话)或指定

一个不同的默认值.

 

 

-47089  此种长度的栏不可以用服务器或 site 作为其默认值.

 

当 CHAR, NCHAR, VARCHAR, 或 NVARCHAR

类型的栏之预设长度小于 18 时,

您不可以用数据库服务器名称或 site 名称为其默认值.

请增加栏长度或指定一个不同

的默认值.

 

 

-47090  此种栏类型不可以用今天作为其默认值.

 

当栏的类型不是 DATE 时, 您不可以用系统的目前日期为其默认值. 请变更该栏

数据类型(假如允许的话)或指定一个不同的默认值.

 

 

-47091  此种栏类型不可以用用户作为其默认值.

 

当栏的类型不是 CHAR, NCHAR, VARCHAR, 或 NVARCHAR 时, 您不可以用

用户的登入名称为其默认值. 请变更该栏数据类型(如果允许的话)或指定

一个不同的默认值.

 

 

-47092  此种长度的栏不可以用用户为其默认值.

 

当一个 CHAR, NCHAR, VARCHAR, 或 NVARCHAR 类型的栏之长度小于 8 时,

您不可以用使用者的登入名称为其默认值. 请增加栏长度或指定一个不同的默认值.

 

 

-47093  BYTE 或 TEXT 类型的栏不可建为唯一或主键限制.

 

如果允许的话, 请变更 TEXT 或 BYTE 为其他的类型以建立此栏为主键或唯一限制.

 

 

-47095  无法在参考表格中找到此栏.

 

对于一个没有出现在参考表格上的栏您不可以将其设为外键限制. 请指定一个参

考栏或被参考栏给此限制.

 

 

-47098  合成清单中的组成栏数超过上限.

 

在 INFORMIX-OnLine Dynamic Server 上的单一主键或唯一限制中不得超过 16

个栏名称, 在 INFORMIX-SE 数据库服务器上的主键或唯一限制上则不得超过 8 个

栏名称. 请减少在限制定义中所指定的栏数.

 

 

-47099  您不可修改已经存在的限制.

 

您不可以使用 ALTER TABLE 选单选项来修改已存在的限制. 在一名称前出现星号

时, 表示该名称有所限制.

 

 

-47100  栏不在表格中

 

您无法对一个没有出现在表格中的栏设立限制.

 

 

-47101  若要移除一个已存在的限制, 现行的栏必须是一个限制名称.

 

光标在屏幕上错误的字段中. 移动光标以选取在 Constraint Name 字段中反白的

输入项, 来移除所有与主键, 检查或唯一限制有关的栏. 选取 Constraint 字段

以移除所有有关外键限制的栏.

 

 

-47102  已经超过暂时缓冲区大小.

 

用来保存检查限制值和文字默认限制值之 SQL 编辑器中的缓冲区已满. 若您正在

修改检查限制, 不同的编辑器可能有较大的缓冲区.

 

 

-47104  填充要素百分比必须为不大于 100 的正数.

 

您所使用的填充要素百分比为负数或是大于 100 . 请指定一个不同的百分比, 或

者按下 RETURN 键以接受百分之 90 的默认值.

 

posted @ 2019-10-19 13:20  NeverBeGiveUp  阅读(1354)  评论(0)    收藏  举报