欢迎 turboli 加入本站!
 免费注册  用户登陆  汇款方式  汇款确认  产品报价  联系我们  帮助中心

加入收藏
设为首页
会员体系
申请VIP
网站首页 光盘超市 软件下载 技术文章 专题 用户中心 VIP会员 网站留言 论坛 站内搜索 卓越资源 源代码

今天是:2010年09月10日 星期五  您现在位于: 首页 → 技术文章 → Informix出错信...
   Informix出错信息中文版(11)
作者:oldbank  出处:www.hhnxs.com  更新时间: 2007年03月20日 
-211        不能读取系统目录<目录表>。

数据库服务器在处理大多数语句时参照系统目录表。当不能读取这些重要的表时就产
生了严重的错误。检查伴随的ISAM错误代码以获得更多的信息。错误的影响取决于正
在执行的语句和特定的表,如下所示。

    *   CREATE TABLE语句,systabauth不能读取;该表可以被建立,但不能象正常
        情况一样授权给PUBLIC。

    *   DROP TABLE语句,systables不能读取;不做任何动作。

    *   DROP TABLE语句,sysviews不能读取;该表将被取消,但任何依赖于该表的
        视图将不能被自动取消。

    *   DROP VIEW语句,sysviews不能读取;不做任何动作。

    *   DROP INDEX语句,systables或sysindexs不能读取;不做任何动作。

    *   DROP SYNONYM语句,systables或syssynonyms不能读取;不做任何动作。

    *   DROP DATABASE语句,systables不能读取;不做任何动作。

    *   START DATABASE语句,systables不能读取;不做任何动作。

    *   DATABASE语句,systables或sysusers不能读取;该数据库不被选中
        (没有当前数据库,后来的操作见错误-349)。

其它语句可能在错误被侦测出来之前已经部分完成了。滚回当前的事务并调查错误的
原因。使用实用工具bcheck或secheck(INFORMIX-OnLine的tbcheck或INFORMIX-
OnLine动态服务器的oncheck)来检查或修复索引。如有必要,从备份和逻辑日志磁带
上恢复数据库。

-212        不能增加索引。

这个语句试图增加一个索引,可能是显式地通过CREATE INDEX,或是隐含地作为对多
个无索引表的SELECT的处理的一部分。不管在哪种情况下,某些错误阻止了索引的建
立。请检查伴随的ISAM错误代码以获得更多的信息。产生这个问题的一个常见的原因
是磁盘空间不足。

-213        语句被用户中断。

数据库服务器接收到用户发出的一个中断信号,可能是由于用户按下了中断键(通常是
Delete键或Control-C)。语句提前结束。程序应滚回当前的事务并友好地结束。如果
该语句可能修改表,交互式用户应该执行ROLLBACK WORK以取消任何不完全的修改。

-214        不能给表<表名>删除文件。

数据库服务器不能完全地删除该表。检查伴随的ISAM错误代码以获得更多的信息。
操作系统的文件访问权限问题,只读文件和硬件错误可能引发这个错误。

-215        不能为表<表名>打开文件。

数据库服务器不能打开操作系统文件或存储该表处的文件。请检查伴随的ISAM错误
代码以获得更多的信息。操作系统的文件访问权限问题,内存不足和硬件错误可能
引发这个错误。

-216        不能删除文件的ISAM索引。

数据库服务器不能完全地删除一个索引。检查伴随的ISAM错误代码以获得更多的
信息。操作系统的文件访问权限问题,只读文件和硬件错误可能引发这个错误。

-217        在查询中未在任何表内发现字段<字段名>。

该字段名出现在这个查询的选定列表或是WHERE子句中,但在表中未定义。检查选定
的表的名字是否拼写得与你所预期的相同。如果是这样的话,或是你正在使用不正确
的数据库,或是该数据库已被改变;可能是某个字段已被改名或清除。为了列出表内
全部字段,见对错误-328的讨论。

-218        同义字<同义字名>未找到。

同义字在这个数据库中未被定义。检查同义字名是否拼写得如你所预期的。检查你正
在使用你所希望用的数据库。如果是这样的话,该同义字可能被取消了。该同义字可
能是在它所在的表被取消时被自动取消了。为了显示所有被定义的同义字,查询
systables,如下所示:

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        不能开始保存点。

从版本4.1开始可以侦测到的内部错误。如果该错误再次出现,请记录下所有的环境并
与Informix 技术支持部联系。

-221        不能建立新表<表名>的临时文件。

数据库服务器不能建立一个临时磁盘文件。该文件应在环境变量DBTEMP指定的目录下
被创建。如果DBTEMP没有定义,在缺省情况下,数据库服务器在根目录下搜索名为tmp
的子目录,并在该目录下建立临时磁盘文件。检查伴随的ISAM错误代码,并查看操作
系统信息以获得更多的信息。可能是你的帐户没有在该目录下写的许可,也可能是磁
盘已满。从版本5.01开始,INFORMIX-SE数据库服务器就已使用环境变量DBTEMP,但
INFORMIX-Online动态服务器没有使用。

-222        不能写新表<表名>的临时文件。

数据库服务器建立了一个临时磁盘文件,但当试图写该文件时发生了一个错误。请检
查伴随的ISAM错误代码,并查看操作系统信息以获得更多的信息。在UNIX系统中,
该文件应在环境变量DBTEMP所指定的目录下被建立(缺省值为 /tmp);在DOS系统中,
该文件应位于当前目录下。可能是磁盘已满,或是发生了硬件错误。从版本5.01
开始,INFORMIX-SE数据库服务器就已使用环境变量DBTEMP,但INFORMIX-Online
动态服务器没有使用。

-223        在FROM子句中重复的表名<表名>。

表名在关键字FROM之后的列表中出现两次。检查语句看看你是否想第二次命名其它
一些表。如果你的意图是使表自连接,第二次和以后表的实例必须使用表的别名。
下例表明查找有相同名字的顾客的一种方法:

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动态服务器,向OnLine管理员报告这种问题。对其
它数据库,检查伴随的ISAM错误代码,查看操作系统错误信息,它可能给出更多的信
息。START DATABASE语句指定了到日志文件的路径。如果文件已经删除,可以重新建
立它作为一个空文件。如果路径已经改变,可以发布新的START DATABASE语句来重新
定义它。

-225        不能为系统目录<表名>创建文件。

数据库服务器(不是OnLine)试图对系统目录创建表,可能作为CREATE 
DATABASE语句的一部分。可能存在主机操作系统禁止的问题。更多的信息请检查伴随
的ISAM错误代码,查看操作系统错误信息。磁盘空间不足和操作系统文件访问权限的
问题可能产生这个问题。

-226        不能为系统目录<表名>创建索引。

数据库服务器(不是OnLine)试图对系统目录创建表,可能作为CREATE DATABASE语句
的一部分。它创建该表但存在主机操作系统禁止它建索引的问题。更多的信息请检查
伴随的ISAM错误代码,查看操作系统错误信息。磁盘空间不足可能产生这个问题。

-227        禁止对ROWID进行DDL操作。

这条语句试图改变名为ROWID的字段。该字段是每个表的一部分,除被分段存储的表
外。你可以用SELECT语句中选择它并在WHERE子句中比较,但不可以用DDL语句更改
它。

-228        禁止对ROWID进行UPDATE或INSERT。

这条语句命名字段列表中的字段ROWID用于插入或修改。rowid是不能修改的固有特
性。你可以在SELECT语句中选择它并在WHERE子句中比较,但不可以语句修改它的内
容。

-229        不能打开或创建临时文件。

数据库服务器不能创建一个临时磁盘文件。应该在由DBTEMP环境变量指定的目录(或
在UNIX系统上由缺省指定的/tmp)中创建临时文件。检查伴随的ISAM错误代码,查看
操作系统错误信息,它可能给出更多的信息。可能你的帐户已经没有在那个目录中写
的权限,可能磁盘已满。从版本5.01开始,INFORMIX-SE数据库服务器就已使用环境变
量DBTEMP,但INFORMIX-Online动态服务器没有使用。

-230        不能读取临时文件。

数据库服务器在由DBTEMP环境变量指定的目录(或在UNIX系统上由缺省指定的/tmp)
中创建临时文件,但是在试图把文件读回时发生错误。检查伴随的ISAM错误代码,
查看操作系统错误信息,它可能给出更多的信息。可能出现了硬件故障,可能另一个
用户意外地删去临时文件。从版本5.01开始,INFORMIX-SE数据库服务器就已使用
环境变量DBTEMP,但INFORMIX-Online动态服务器没有使用。

-231        不能用关于表达式的distinct执行聚集函数。

这条语句在聚集函数内选择DISTINCT (表达式)。这个动作是不支持的。选择
DISTINCT 值和其它字段进入一个临时表,然后从那个表选择ALL运用聚集函数。

-232        SERIAL字段<字段名>不能修改。

你不能用UPDATE语句中的数据类型SERIAL更改字段内容,即使修改的值是零。(在使
用INSERT语句时可以为序号字段指定零值;数据库服务器不理睬零而插入一个生成的
数。)修正语句以便只修改非序号字段。

-233        不能读取被其它用户锁定的记录。

其它用户已经锁定由这条语句选出的行。如果你交互地执行该语句,可以做两件事之
一。 可以等待一会儿再输入这条语句,或执行语句SET LOCK MODE TO WAIT,
之后你将很难再看见这条信息。

在一个程序中,你应该滚回当前事务处理,等待随机的间隔,再运行该事务。如果你
用WAIT的LOCK MODE运行事务,就能减少这种错误的频率,但它在某些情况下仍会出
现,例如当发现死锁时。该错误通常伴随一个ISAM错误代码,-107, -113, -134, 
-143, -144或-154,程序可以对每种错误做出不同响应。

-234        不能插入虚拟字段<字段名>。

这条INSERT语句指向一个视图,而不是一个真正的表,在视图中定义的一个字段实际
上是一个表达式的值。不允许对有这种字段的视图进行插入和修改。对视图所依赖的
真正的表运用INSERT。

-235        字符字段的宽度太大。

这条语句对宽度大于32,767的字段或宽度超过255的VARCHAR字段指定了CHAR
数据类型。如果你需要这种大小的字段,就使用TEXT数据类型,它允许无限长。
否则,检查语句是否印刷错误。

-236        在INSERT中字段数与valueS的数目不匹配。

在INSERT语句中命名或采用的每个字段必须分别有值表达式。如果语句没有列出特定
的字段,检查表的定义,或字段的数量及其数据类型。也检查valueS子句中表达式的
列表是否没有多余的或遗漏的逗点,它们可能会导致错误的赋值数量。要特别小心长
字符串和带括号的表达式。

-237        不能进行开始工作。

数据库服务器不能执行BEGIN WORK语句。更多的信息请检查伴随的ISAM错误代码。
在访问事务日志时可能发生问题。

-238        不能进行提交工作。

数据库服务器不能执行COMMIT WORK语句。更多的信息请检查伴随的ISAM错误代码。
在访问事务日志时可能发生问题。

-239        不能插入新行 — 在UNIQUE INDEX字段中有重复值。

正在被插入(或修改具有新的主键)的行在限制必须有唯一值的字段中,包含已经存
在的某些行的重复值。该行不能被插入。滚回当前事务处理,没有任何重复行后再执
行它。

-240        不能删除行。

数据库服务器不能完成DELETE语句的执行。滚回当前的事务处理;然后,检查伴随的
ISAM错误代码,得到更多的信息。
 (本文已被浏览 4457 次)
 发布人:sdccf
 → 推荐给我的好友
上篇文章:Informix出错信息中文版(10)
下篇文章:Informix出错信息中文版(12)
 相关文章:
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出错信息中文版(11)的更多内容
查看google中关于Informix出错信息中文版(11)的更多内容
   文章分类
操作系统 |
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://unix-cd.com/
    联系我们:sdccf@163.com
    腾讯QQ: 7644599
    备案序号:鲁ICP备09036304号
    Copyright (c) 2001-2010 Unix-cd.com. All Rights Reserved.