Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104595477
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: DB2/Informix

2008-03-21 00:00:09

作者:oldbank  出处:
-716        可能不一致的事务。<服务器名称列表>是未知的服务器。

在管理员杀死一个协调者之后该信息出现-OnLine数据库服务器进程、线索或会话使
用tbmode -z 或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分布的事务处理
环境中已经挂起了一个事务,它的下一个语句必须是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;        /* 触发器错误 -721 */

-722        堆栈空间溢出。

服务器运行的堆栈空间溢出。请求Informix数据库管理员增加在$ONCONFIG (或 
$TBCONFIG) 文件中指定的STACKSIZE参数以分配更多的内存。为使此改变生效,
OnLine必须重新开始。

-723        不能禁止在一个符合ANSI标准的数据库中进行日志。

试图使用START 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        无效或NULL tblspace 数送给dbinfo(dbspace)。

用`dbspace' 串常数作为第一个参数调用dbinfo() 函数。必须提供一个有效的表空间
的数或一个能计算出与第二个参数一样的数的表达式。检查是否提供了一个数作为第
二个参数,并且对应于一个有效的表空间的数。

-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 TRIGGER 语句,在 CREATE TRIGGER 语句中参考
了在存储过程中定义的变量。这是非法的。删掉从 CREATE TRIGGER语句中对存储过程
变量的参考,再试一次。

-734        对象名称匹配旧的或新的值相关名称。

该错误在下面三种情况下返回:

    *   触发表名称,或同义字,(如果使用了),匹配REFERENCING 子句中的旧的或
        新的相关名称。

    *   在动作子句中参考的表名称,或同义字,(如果使用了),匹配REFERENCING
        子句中的旧的或新的相关名称。

    *   旧的相关名称匹配新的相关名称。

改变相关名称或表名称,然后再执行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的分辨率意即为任何单一选定过
滤器的应用的估计的精确度限制于(+或-)百分之五。大于10.0的值无意义因为它不
能提供关于数据分布的足够的细节。

-741        同一事件的触发器已经存在。

为一个事件产生一个触发器,但是已经存在一个该事件的触发器。在一个表中只能有
一个插入或删除触发器。如果在一个更新中定义了多重触发器,在UPDATE语句中的字
段列表必须是互相排斥的-即,不能在超过一个的UPDATE子句中将一个字段命名为触发
字段。

-742        触发器和指示的约束不能共存。

删掉不能与指示的约束共存的触发器。

-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技术支持部
联系。
阅读(610) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~