-501索引索引名;已经未被聚类。表不再在(如果曾经在)本索引上被聚类。确认本索引是用户意指的索引;如果这样,则不必变更本索引。查看哪一个表已被聚类的方法,参见出错号-500的讨论。-502不能聚类索引。当数据库服务器以行的聚集顺序建立表的新拷贝时,得到一个不期望的错误。检查ISAM出错代码以获取更多的信息。典型的原因包括磁盘空间的短缺。-503锁定的表太多。在本主机操作系统的数据库服务器中,有一个关于一次可锁定的表的数量的限制。它不能锁定用户请求的表。滚回当前的事务,然后重新设计操作以锁定较少的表,或者代之以行级的锁定,或者以互斥方式打开数据库。-504不能锁定视图。本LOCKTABLE命令不能被执行,因为指定的表实际是一个视图。只有实际的表可以被锁定。滚回当前的事务。然后重新设计操作针对视图所基于的实际的表进行工作,或者以互斥方式打开数据库。-505在UPDATE中的字段数与VALUES的数目不匹配。本UPDATE语句使用一个SET子句,在其中一个字段名字的列表设置为等于表达式的列表,或者等于SELECT语句。等式左边的字段数并不等同于右边产生的数据值。滚回当前的事务,然后重写语句。如果表达式的列表被使用,检查标点以确认每个表达式是不同的。如果SELECT语句被使用,检查看有多少字段返回。-506没有更新所有字段的许可。用户的账户已经被授予更新特别字段的权限,但是本UPDATE语句更新所有的字段,或者更新用户没有权限的字段。与表的拥有者联系或与本数据库中某个有数据库管理员权限的人员联系,并要求授予完全的UPDATE权限。列出表的拥有者的方法,参见出错号-313的讨论。-507游标游标名;没有找到。在本UPDATE或DELETE语句中WHERECURRENTOF子句命名的游标不存在。重新审查名字的拼法。如果是用户所要的名字,则检查DECLARE语句并确认该语句已被执行。同时还要确认游标没有用FREE语句释放。-508不能改名临时表。本RENAMETABLE语句不能被执行,因为指定的表是临时的。不能改名一个临时表。重新审查表名的拼法。如果是用户所要的名字,取消它,用不同的名字再建立一次。-509不能改名临时表中的字段。本RENAMECOLUMN语句不能被执行,因为指定的表是临时的。不能在临时表中重命名字段。重新审查表名的拼法。如果是用户所要的名字,取消它,用不同的字段再建立一次。-510不能为临时表表名;建立同义词。本CREATESYNONYM语句不能被执行,因为指定的表是临时的。重新审查表名的拼法。如果是用户所要的名字,则必须重新设计应用程序:或者使表变为永久的,或者不使用同义词。-511不能修改系统目录表名;。不允许用户更新、插入或删除本表中的行。如果用户有把握必须这样做,则必须作为用户informix签字。那个用户账户可以修改多数的系统目录表;然而,这是一个有很大风险的不被推荐的作法,除非得到Informix技术支持部的特别通知。-512对参考的字段没有参考权限。用户对参考的字段没有参考权限。参考表的拥有者,或者有参考权限的用户带有那个表的授权选项,可以使用GRANT语句授权用户这一权限。-513语句不可与本数据库服务器一起使用。本语句(或其中的子句)被某些数据库服务器支持,但是不被用户当前正使用的数据库服务器支持。数据库服务器的选择(当有一个选择时)由SQLEXEC环境变量(对于6.0以前的版本的数据库服务器)的设置决定。如果本语句在以前而不是现在工作,查看在SQLEXEC中的变化。-514只有DBA可以建立、取消或授权其它用户。本数据定义语句指定由其它用户拥有或作为其它用户授权的表、视图、索引或同义词。任何这些事情都要求有数据库管理员的权限,而用户在本数据库中没有这一权限。如果用户意欲在自己拥有的对象上工作,重新审查语句的标点;在某处你已限定具有另一帐户的user-id的名字。否则,要求DBA为你授权DBA权限,或者直接为你做这些操作。-515约束约束名;已经被取消。试图在同一个ALTERTABLE语句中取消一个已经被取消的约束。-516系统错误-临时输出文件还未建立。这个内部错误表示在数据库服务器和调用它的库函数之间的通信中出了问题。检查用户程序与数据库服务器在同一软件级。如果错误再次发生,则请记录所有的情况并和Informix技术支持部联系。-517索引的总大小太大或者索引中有太多的部分。所有的数据库服务器有关于可以在索引中包含的字段数的限制,及关于键(字段宽度之和)的字节总数的限制。本CREATEINDEX语句对于本数据库服务器将超过那个限制。所有的数据库服务器支持至少8个字段及126字节的宽度。OnLine分别允许16和255。-518子约束约束名;未找到。如果这个内部错误再次发生,则请记录所有的情况并和Informix技术支持部联系。-519不能修改字段成不合法的值。本UPDATE语句的值中的一个是基于一个错误的表达式。检查每个SET语句中表达式的正确性,特别注意内置函数如LENGTH及DATE的用法。-520不能打开数据库tblspace。OnLine数据库服务器不能定位在存储有本命令要参考的表的磁盘分区。与OnLine管理员联系以找出问题之所在。可能包含该tblspace的大块已经脱机。-521不能锁定系统目录表名;。不允许锁定任何一个包含系统目录的表。这些表是所有用户在任何时间都需要的。数据库服务器正确地处理对它们的并行访问,所以,用户可以从程序中直接删除这些语句。-522表表名;在查询时不被选择。使用一个相关的名字使字段名在GROUPBY子句或在SET子句合格。考虑在作为触发动作的存储过程中重写语句,传递作为参数的字段值。在任何情形下,必须重写语句且在GROUPBY子句或SET子句中没有使用相关的名字。-523只能恢复、修补或取消表。本语句(RECOVER、REPAIR或DROP)指定一个视图。然而,这些语句只支持真实表而不支持视图。在DROP的情形下,如果要取消视图中使用的表中的任何一个表,则视图也同时被取消。要恢复或修补这种表,必须恢复或修复这些表在其上已有视图定义。列出是视图的表的名字的方法,参见出错号-394的讨论。-524锁定表只能在事务内使用。因为本数据库有一个事务日志,所以表只能在事务内锁定。重新审查程序并确保本语句之前已发出一个BEGINWORK语句启动事务。-525不能满足参考的约束约束名;。在ALTERTABLE或SET语句期间,你增加或激活了一个由表中损坏的数据的参考约束。检查正参考字段的数据(子键)在被参考字段(父键)中存在。-526不允许修改滚动游标。对一DECLARE子句,则子句FORUPDATE不允许和SCROLL关键字在一起。对一符合ANSI标准的数据库(在其中,当说明游标要修改时,FORUPDATE子句是不需要的)中的UPDATE语句:则本语句命名的游标用SCROLL关键字说明,并且不能用于更新。滚动游标的实现方法使对表的更新不安全,因为它有时不反应选定行的当前状态。如果用户要使用滚动游标来检查行,然后更新它们,可以重新用下面的方法设计应用程序(其中之一):使用滚动游标同时选择每行的ROWID。再次说明非滚动游标选择进行更新的行是基于其ROWID。当更新一选定行时:*使用由滚动游标找到的ROWID值打开更新游标。*取出该行并检查出错代码(行可能已被删除)。*如果fetch成功,检验行的内容未从滚动游标(游标现在是锁定的,因此不能被进一步修改,但是在两个fetch之间它可能已经被修改)的选定中改变。*如果游标未改变,则使用非滚动游标修改。*关闭非滚动游标。*本过程确保修改反应当前表的状态而保持了滚动游标的方便。一个由新近取出的行的ROWID的fetch常常没有磁盘活动并且不会花费很多时间。-527本系统中加锁方式不可用。用户试图使用SETLOCKMODETOWAIT语句于INFORMIX-SE,而INFORMIX-SE数据库服务器使用CREATELOCKING而不是SystemV的锁定。如果错误再次发生,则请记录所有的情况并和Informix技术支持部联系。数据库服务器不能执行SETLOCKMODETOWAIT语句,因为主机操作系统对于锁定并允许等待锁的释放没有适当地支持。本系统中,用户的程序在表或行被锁定(有出错号如-233或-378)时将被通知;程序决定在下一步要做什么,例如,回滚事务并再试。-528最大的输出行大小最大大小;被超过。本语句选择的总字节数超过数据库服务器和程序间可以传递的最大值。确认选择的字段是所需要的字段;检查例如没有由于错误而命名了很宽的字符字段,或者忘记指定一个子字符串,或者指定了过长的子字符串。如果选择是所需求的,把SELECT重写成两个或更多的语句,每个语句只选定字段中的某一个。如果这是几个表的联结,则最好选择所有想要的数据INTOTEMP;然后选择临时表的专用字段。如果这是一个借助程序中游标的fetch,则可以修改程序如下。首先,改变游标以便只选择想要的行ROWID,第二,用一组SELECT语句扩大FETCH语句,每个语句选择一个或几个字段WHEREROWID=保存的row-id。-529不能连到共享内存。本出错信息在6.0版以前的版本中出现。用户的应用程序不能初始化其对数据库服务器的连接,因为用户正使用一个共享内存工具。要么数据库共享内存还未被初始化,要么最大个数的用户已经启动使用系统。检查伴随的ISAM出错代码以获取更多的信息。-529不能连到事务。本出错信息在6.0版以前的版本中出现。用户的应用程序不能初始化其对数据库服务器的连接,因为用户正使用一个共享内存工具。要么数据库共享内存还未被初始化,要么最大个数的用户已经启动使用系统。检查伴随的ISAM出错代码以获取更多的信息。-530检查约束约束名;失败。放置在表字段的检查约束已经被扰乱。要找与字段相联系的检查约束,可以查询syschecks系统目录表。然而,用户在查询syschecks之前必须知道检查约束的constrid。(constrid在sysconstrains系统目录表中赋值。)使用下面的子查询以显示约束名;的检查约束。SELECT*FROMsyschecksWHEREconstrid=(SELECTconstridFROMsysconstraintsWHEREconstrname=constraint-name)-531在视图中存在有重复的字段字段名;。本CREATEVIEW语句给出一个字段名的列表,并且其中至少有一个字段在列表中出现两次。重新审查字段名列表并确认每个字段只出现一次。-532不能变更临时表表名;。所示的表只是一个临时表,它将在会话期结束时消失。这样的表不能被改变。要改变表的形式,直接取消并重新建立之。-533范围大小太小,最小值为数字k。为磁盘范围(无论EXTENTSIZE子句或NEXTSIZE子句)指定的大小必须至少四倍于磁盘页大小,如所示。通常,把EXTENTSIZE设置得足够大,以容纳在最初估计的所有的行,而设置NEXTSIZE为其八分之一或四分之一。-534表被锁住,不能在表中插入新行。4.0及以后版本的数据库服务器不返回本错误。在较早的版本中,其意义与错误号-271(带ISAM出错代码-113)相同。滚回当前事务,并在表被解锁以后重新运行。-534不能开启EXPLAIN输出文件。SETEXPLAINON语句已被执行,且数据库服务器正试着开启目前工作目录下的sqexplain.out文件。有某种操作系统的错误阻止了它。详情参见ISAM错误码。更详细部份可查看操作系统错误信息。可能的原因有:缺少对目前目录的应有权限;磁盘空间满。4.1版开始有这条出错信息。-535已在事务中。本BEGINWORK语句是多余的;事务已经在处理。如果这是一个程序,重新审查其逻辑以确认没有意外的失败结束先前的事务。-536子约束中的字段数与父约束中的字段数不匹配。正参考的字段(子键)数与参考约束中被