欢迎 stonege 加入本站!
 免费注册  用户登陆  汇款方式  汇款确认  产品报价  联系我们  帮助中心
加入收藏
设为首页
会员体系
申请VIP
网站首页 光盘超市 软件下载 技术文章 专题 用户中心 VIP会员 网站留言 娱乐中心 卓越资源 源代码
今天是:2009年07月05日 星期日  您现在位于: 首页 → 技术文章 → Informix出错信...
   Informix出错信息中文版(27)
作者:oldbank  出处:www.hhnxs.com  更新时间: 2007年03月20日 
-671        过程调用<过程名>有重复的参数名。

一个过程调用命名同一个参数不止一次。

错误的例子:

LET var = proc (arg1 = 10, arg2 = 20, arg1 = 30);-- 错误

-672        无效的数据结构<执行树>。

如果这个内部错误再次发生,请记录全部的环境并和Informix 
技术支持部联系。

-673        过程<过程名>已经在数据库中存在。

试图建立一个已经在数据库中存在的过程。如果你想建立过程的一个新版本,在试图
建立过程的新版本前使用DROP PORCEDURE语句取消这个过程。

-674        过程<过程名>没找到。

一个被调用的过程在数据库中不存在。如果你准备了一个EXECUTE PROCEDURE语句,然
后过程被你的应用或一个其它的应用在你执行准备的语句前终止,会收到这个错误。

-675        不合法的SQL语句在存储过程中。

在一个过程中运行一个禁止的语句。这个错误发生在一个过程被一个SQL数据管理语句
调用时。

错误的例子:

CREATE PROCEDURE testproc (arg INT, id INT) RETURNING INT; UPDATE tab
        SET col = arg WHERE key = id; -- 错误 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; -- 错误        ...
END FOR

更正:更正范围或步长表达式以使增加的值在范围之内。

-684        过程<过程名>返回太多的值。

从一个过程返回的值的个数多于调用者期待的值的个数。

错误的例子:

CREATE PROCEDURE testproc (arg INT)
        RETURNING INT, INT;
        RETURN 1,2;
END PROCEDURE
SELECT col FROM tab WHERE col = testproc(1); -- 错误

-685        过程<过程名>返回太少的值。

从一个过程返回的值的个数少于调用者期待的值的个数。

错误的例子:

CREATE PROCEDURE testproc (arg INT)
        RETURNING INT, INT;
        RETURN 1,2;
END PROCEDURE
UPDATE tab SET (c1, c2, c3) = (testproc(1)); -- 错误

-686        过程<过程名>返回超过一行的值。

一个过程在调用者期待只返回一行值的时候,返回了超过一行的值。(例如,它执行
RETURN... WITH RESUME)

错误的例子:

CREATE PROCEDURE testproc (limit INT)
        RETURNING INT;
        DEFINE i INT;
        FOR i IN (1 TO limit)
                RETURN i WITH RESUME;
        END FOR
END PROCEDURE;
CREATE PROCEDURE gettest()
        DEFINE var INT;
        LET var = testproc (10); -- 错误END PROCEDURE

-687        在跟踪存储过程前设置调试文件。

一个TRACE语句(除了TRACE OFF)在一个SET DEBUG FILE语句前执行。不知道TRACE
语句的输出到何处。

错误的例子:

TRACE procedure; -- 错误
更正:
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错误以得到更多的信息。如果使用级连的删除,数据库
日志必须打开。
 (本文已被浏览 2132 次)
 发布人:sdccf
 → 推荐给我的好友
上篇文章:Informix出错信息中文版(26)
下篇文章:Informix出错信息中文版(28)
 相关文章:
Informix的历史沿革 Informix case语句的妙用
Informix在一台机器上起两个实例的思路 informix 锁表处理步骤
informix审计功能的配置 informix临时表的存放位置
Informix数据库一致性检查 Informix中求时间间隔的函数
Informix表空间计算 Informix如何更加有效的创建主键和外键
SCO UnixWare 7.1.4下安装Informix 基于Informix的ESQL/C(2)
基于Informix的ESQL/C(1) 在 IDS 9.x 中使用 GUID
如何综合掌握 DB2 和 Informix 使用Informix系统目录
Informix数据库优化 Windows XP下也玩Informix
Informix-4GL/FORM的使用(3) Informix-4GL/FORM的使用(2)

相关搜索
查看百度中关于Informix出错信息中文版(27)的更多内容
查看google中关于Informix出错信息中文版(27)的更多内容
   文章分类
操作系统 |
SCO_UNIX  Sun_Solaris  IBM_AIX  HP_UX  Linux  BSD  Tru64_UNIX 
通用UNIX知识  Windows  Minix 
程序设计 |
Shell编程  C/C++  汇编  PHP  JAVA  Perl  Python 
ASP/HTML  XML  中间件 
数据库 |
Oracle  Informix  Sybase  Fox  DB2  SQL  MySQL 
PostgreSQL 
网络应用 |
网络应用 
计算机硬件 |
计算机主机  打印机  路由器  交换机  终端  磁带机  MO 
刻录机  终端服务器  调制解调器 
   文章评论
  → 评论内容 (点击查看)   共0条评论,每页显示5条评论   浏览所有评论
(没有相关评论)
  → 发表我的评论
您的姓名: 您的Email:
评论内容:
250字内
发表评论:      发表评论须知 →
  • 尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法;
  • 本站有权保留或删除您发表的任何评论内容;
  • 关于我们 ┋  网站留言 ┋  网站地图 ┋  友情链接 ┋  与我在线 ┋  汇款确认 ┋  管理 ┋  TOP
    Unix爱好者家园  http://www.unix-cd.com/
    联系我们:sdccf@163.com
    腾讯QQ: 7644599
    备案序号:鲁ICP备05000455号
    Copyright (c) 2001-2008 Unix-cd.com. All Rights Reserved.