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

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: DB2/Informix

2008-03-20 22:18:20

作者:oldbank  出处:
-2041        屏幕表格文件名无法打开。很可能不存在。或用户没有读取权限。

检查文件名的拼写。检查屏幕表格文件存在于当前目录下。或如果在其它路径下,提
供了正确的路径名。在UNIX系统中,如果上述检查无错,检查你的帐户有该文件的读
取权限。

-2042        上面语句中或附近的BLOB显示字段的用法不正确。

BYTE和TEXT类型字段不能按在该语句中使用方式使用。检查表名和字段名,确认无
误,并检验在DATABASE语句中命名的数据库的表的当前定义。

-2043        屏幕版面布置超过指定屏幕宽度。这仅是警告信息。

假设的屏幕宽度可在SCREEN语句或屏幕表格编译程序命令行参数中得到,缺省值是80
个字符。如果当前屏幕表格说明被显示于具有此宽度的终端,或者一些行被截断或者
行被不明显地“自动换行”。

-2044        最多可以为每个字段的每个条件指定一个颜色属性。

检查ATTRIBUTES语句,COLOR属性附近可能有错。找出漏掉的标点。

-2045        4GL显示字段的条件属性不能取决于其它显示字段的值。

属性COLOR中WHERE子句的布尔表达式只能使用显示字段名或常数。修改该属性并
重新编译屏幕表格。

-2100        显示字段field存在校验串错误,String =string.

在syscolval或syscolatt表中的格式串或校验串之一未被正确地编码。字符串作为其
应用的显示字段来指定。使用Windows的Column attributes Dictionary实用工具或者
DOS和UNIX的upscol实用工具修改该字符串。

-2800        说明部分的第一行必须是关键字database后接数据库名,或者关键字
FORMONLY(只限4GL)。还可接WITHOUT NULL INPUT选项.

除了注释行,屏幕表格说明必须以命名数据库开始。检查文件中的标点和拼写错误。
参照该产品的参考手册,以得到DATABASE语句允许的选项。(这条信息当前不使用,
在4.0版本或更早版本的产品中才能遇到)。

-2810        名称name不是现存的数据库名。

在屏幕表格说明起始部分的DATABASE语句中的名称,不是可以找到的数据库。除非使
用-OnLine,数据库必须被置于当前目录下或者在环境变量DBPATH中命名的目录下。

-2811        写出时无法打开临时表table-name。

应用程序试图在数据库中创建一个临时表或者一些其它临时文件,但收到数据库服务
器产生的错误代码。最可能的原因是磁盘空间不够。查找包括操作系统信息的其它错
误信息,以获取更多信息。

-2812        临时表table-name无法读取。

应用程序在数据库中创建并填充一个临时表,或者创建并填充一些其它临时文件,但
试图从中读取数据行时,收到数据库服务器产生的错误代码。最可能的原因是硬件失
败。查找包括操作系统信息的其它错误信息,以获取更多信息。

-2820        括号之间的标签名没有正确地给出或者标签丢失。

在屏幕表格说明的SCREEN节的这行中,存在由中括号指定的显示字段;但在括号内应
有简单名而实际上没有:或者除了空格外没有其他的内容,或者是个无效的名称。检
查该行的标点,确认括号间只有一个简单标识符。

-2830        在这行找到左中括号,但无右中括号与之匹配。

屏幕显示字段不能跨行。检查SCREEN节,确认所有显示字段被适当地标记。如果创建
多行显示字段,对多重完整的显示字段须使用同一显示字段标签标记。

-2831        控制块超过显示字段的最大极限。

在控制块的OF子句中列出的字段或表太多。这将使你分别写控制块,每个对应原列表
的一部分。

-2832        屏幕表格在显示字段的起始和结束位置使用“|”。因此,屏幕表格必须指定
同一字符作为左右分隔符。可使用INSTRUCTIONS节中的DELIMITERS命令定义它。

确定存在DELIMITERS语句,并且指定了同一字符作为左右分隔符。

-2834        NULL不能当作缺省值。它已经是你不指定任何值时的缺省值。

ATTRIBUTES语句包含指定NULL值的DEFAULT从句。删除该从句或指定其它值。

-2840        屏幕表格中没有定义标签标记。

指定的名称在ATTRIBUTES语句的左部出现,但不在SCREEN节的括号内。检查已定义的
显示字段标记,弄清为什么它被漏掉。

-2841        在属性节前屏幕表格必须包括一个表的说明。

检查屏幕表格说明文件,确认是否按顺序存在DATABASE语句、SCREEN节、TABLES节和
ATTRIBUTES节。

-2843        字段column-name不在屏幕表格说明中。

在ATTRIBUTES语句中的名称,应预先在屏幕表格说明中定义。检查语句中所有名称的
拼写,确定它们被恰当的定义。

-2844        在屏幕表格说明中,字段column-name与一个以上的显示字段关联。

在ATTRIBUTES语句中任何表的字段只能和一个显示字段相关联。也许你试图显示的字
段源自两个或两个以上表,它有着相同的字段名;在这种情况下,将表名作为字段名
的前缀,以区别它们。

-2845        包含字段column的表table-name的复合字段没加索引。为该字段创建索引可
极大地改善性能。

使用索引可减少多层联结表所需的时间。但索引不是必须的。尤其当表很小或者在初
始测试阶段。

-2846        显示字段field-name不是表table-name的成员。

在这个语句中假定所指的名称是这个表的一部分,但它在当前的数据库中不对。检查
两个名称的拼写。如果无错,确认使用了正确的数据库,且该表没有被修改。

-2850        名字<名称>不是这个数据库的字段名。

屏幕表格的TABLES节中指定的表的确存在。但应在ATTRIBUTES节中命名的字段名不存
在。对照实际表检查其拼写。可能表已被修改或字段已被改名。可以在Tables菜单
下,选定info,使用INFORMIX-SQL检查字段名。

-2856        TODAY属性只能赋予日期字段。

TODAY函数(不是属性)返回今天的日期值。该值只能赋予类型为DATE或DATETIME的显
示字段。在这个语句中的显示字段有不同的类型。在4GL程序中提供自动数据转换,但
在屏幕表格环境中无此功能。

-2857        在联结列表中,只能存在一个主要复合字段。

这语句定义一个联结列表,两个或多个字段名与同一屏幕表格显示字段关联的列表。
在这样的列表中,在字段名前有星号表明该字段是检验联结中的主要字段。在任何联
结中只能存在一个这样的字段,但这个列存在两个或更多。检查检验联结的文档,并
选定一个单一的主要表。

-2858        表table-1和表table-2联结。但它们的联结字段不属于复合键。

在两个表之间已定义两个或更多不同的联结字段。但在联结字段上不存在复合索引。
该索引是用以保证复合键的存在的。即,保证联结字段值的任意复合只出现一次。检
查两个或两个以上定义这两个表的联结字段的ATTRIBUTES语句。确认它们如你所望;
例如,确认是基于两个或多个字段联结两个表,而不是基于一个字段联结三个或更多
的表。如果需要复合键,可使用命令CREATE INDEX为至少表1的那些字段创建复合
唯一索引。

-2859        字段<字段名>是一个以上的表的成员,你必须指定表名。

TABLES节中两个或两个以上表均包含指定名称的字段。必须指明你要的是哪个表。方
法是将表名作为字段名前缀。如<表名>.<列名>。无论在屏幕表格说明的任何位置使用
该名称都这样做。

-2860        存在对column-name的字段/值类型失配。

该语句使用DEFAULT从句为显示字段赋值,或者在INCLUDE从句中使用该显示字段的
值,但使用的数据不符合显示字段的数据类型。检查显示字段的数据类型(它来自与
之关联的字段),并确认仅设定兼容的数值。

-2861        已超过最大的表数。

在一次可使用的表数目存在一个极限(这个极限随着不同的宿主系统或者不同的数据
库服务器而不同)。它迫使你减少该屏幕表格使用的表的数目。

-2862        在数据库中找不到表<表名>。

屏幕表格中使用的所有表在屏幕表格编译时必须存在。以便编译程序可验证字段的数
据类型。指定的表在屏幕表格命名的数据库中不存在。检查表名和数据库名的拼写。
如果无错,或者没有使用期望版本的数据库(检查环境变量DBPATH的值),或者数据
库已被修改。

-2863        在指定表中不存在字段column-name。

屏幕表格的TABLES节中指定的表确实存在。但应在ATTRIBUTES节中命名的column-name
不存在。对照实际表检查它的拼写。可能此表已被修改或者该字段已被改名。也可在
Table菜单下,选定info,也可使用INFORMIX-SQL检查字段名。
-2864        在指定表中不包含表table-name。

指定的表用于这个语句,但在屏幕表格说明的TABLES节中无定义。检查其拼写;如果
无错,将该表增加到TABLES节中。

-2865        在表table-name中不存在字段column-name。

在这语句中隐含有表示的字段是指定表的一部分(很可能语句涉及table-name.
column)。但在那个表中没有定义。检查两个名字的拼写。如果没有错误,检查数据
库的内容;很可能该表已被修改或字段已被改名。

-2866        NOW属性只能赋予datetime字段。

这个信息没有在任何当前的产品中使用。SQL不提供NOW属性或函数支持;请用CURRENT
函数。

-2867        CURRENT属性只能赋予datetime字段。

CURRENT函数(不是属性)以DATATIME值产生当前的日期和时间。在语句中引用的显
示字段,不具有DATATIME数据类型。在该环境中不支持自动数据类型转换。检查该
语句,确认引用所期望的显示字段,并修正屏幕表格,将DATETIME值只设定于
DATETIME显示字段。

-2870        下标字段大小与显示字段中分配的空间不匹配。

该属性语句将字段的子串与显示字段相关联。但是,或者子串数字错(第一个小于1或
者大于该字段的大小,第二个小于第一个),或者数字正确但选择的字符个数与显示
字段大小不同。修正子串数字,使之与显示字段要求的字符数绝对一致。

-2880        单词'screen'或者'end'丢失。

每个屏幕表格说明必须以关键字END结尾,必须包含关键字SCREEN。它们都必须在每行
的第一列开始。检查屏幕表格说明内容,确认其包括所有必要的节,并适当地标记。

-2890        屏幕定义必须由左大括号‘{’开始。

每个屏幕版面布置必须置于大括号({})中。左大括号必须是所在行第一个字符。检查
屏幕表格说明,确认屏幕版面布置的句法结构是正确的。

-2892        字段column-name名在屏幕表格中出现一次以上。如果希望某字段在屏幕表格
中重复。使用同样的显示字段标签。

在两个或两个以上位置显示同一字段的方法是:在屏幕版面布置中放置两个或两个以
上显示字段,每个显示字段具有相同的标记名。然后,在ATTRIBUTES节中使用一条单
独的语句,使那个标记名和字段名产生关联。当前的字段值将在所有的显示字段重
复。如果需要显示不同字段。列在ATTRIBUTE节中的字段名必须不同。如果需要显示
不同字段,而又恰巧具有相同字段名。须将表名作为其前缀。

-2893        显示字段标签标记名在屏幕表格中出现一次以上。但长度不同。

可以在屏幕版面布置中放置一个显示字段的多重拷贝(所有拷贝均显示同一字段),
但所有拷贝必须是同样长。检查SCREEN节,以确认:如果打算一个显示字段有多重拷
贝,则所有拷贝必须完全相同。

-2895        field-size的显示字段长度与column-size的数据库字段长度不匹配。只是警
告信息。

该语句定义的字符显示字段大小(如SCREEN节中出现时所示)与关联字段的大小不同。
可在屏幕表格编译程序中指定-v选项,来产生此类警告信息。

-2901        显示字段名包含两个冲突的属性,第一属性和第二属性。

该语句自相矛盾。UPSHIFT和DOWNSHIFT属性不能用于同一显示字段;NOENTRY和
REQUIRED属性,或NOENTRY和VERIFY属性也不能用于同一显示字段。检查该语句并
修正选定的属性。

-2920        该字段column是主要的字段但未加索引。如为该字段创建索引,性能会大有
改进。

指定的字段已定义为检验联结的主要字段。这意味着无论何时操作员在该显示字段输
入一个数值,将会在该字段进行对照。如果索引存在,该对照操作非常迅速。现在该
字段无索引。如果没有索引,对照将会极其缓慢。除非该字段不允许操作员输入(这时
应删除星号)或者表很小(最多几十行),你应该在屏幕表格使用前为该字段创建索引。

-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        格式的指定只限浮点、小浮点、十进制或日期字段。

该属性语句指定了FORMAT串,但显示字段的数据类型不是支持的四种格式之一:
FLOAT、SMALLFLOAT、DECIMAL(或MONEY)和DATE.如果这不是DISPLAYONLY
字段,检查它是否附属于右字段,并确认该字段是否如你所预期的在数据库中定义。

-2933        格式宽度大于预置的显示宽度。

为这个显示字段指定的FORMAT串的长度大于该显示字段本身在SCREEN节表示的长度。
检查屏幕的版面布置,并加以修改,或修改格式使它们一致。

-2934        格式宽度小于预置的显示宽度。

为这个显示字段指定的FORMAT串的长度小于该显示字段本身在SCREEN节表示的长度。
检查屏幕的版面布置,并加以修改,或修改格式使它们一致。

-2935        用'-l' 选项或在屏幕节中指定的行数必须是从6到600之间的一个正整型数。

在SCREEN语句中或用-l(小写L)命令行选项给出的屏幕的垂直大小不在范围内。把它改
为指定屏幕表格将使用的终端的期望尺寸。

-2936        用'-c' 选项或在屏幕节中指定的字段数必须是从30到600之间的一个整型数。

在SCREEN语句中或用-c命令行选项给出的屏幕的水平大小不在范围内。把它改为指定
屏幕表格将使用的终端的期望尺寸。

-2940        显示的字段名既带有下标又不带下标。

这个屏幕表格在不同的显示字段中显示指定字段的全部,和它的下标部分。你可以在
不同的显示字段中显示一个字段的不同的下标部分,但这些部分不能重叠。换句话
说,一个字段的部分不能在同一屏幕显示两次。重新检查指定字段的所有使用。也许
你不想在两个地方命名它;或也许在不同的表中有两个以上的同名字段,你需要使用
表名区别它们。否则,在字段的每个显示字段上使用不重叠的下标。

-2941        <名称>不是该屏幕表格上的一个用于显示的显示字段名。

这个语句引用了显示字段<名称>,但没有定义这样的<名称>。检查拼写,并重新检查
ATTRIBUTES节,看显示字段是如何定义的。

-2943        你已经超出了伪机器的容量。

这个语句中的表达式的处理太复杂。简化它并重新编译该屏幕表格(参见错误信息
-2988。)

-2944        你只能对表而不能对字段使用添加,修改,查询,或删除命令。

所有的添加,修改,删除,和查询操作都应用于整个行。所以这些控制块必须只能在
它们的打开命令中列出表名,而不能列出各个字段的名字。重新检查这个语句中的名
字,把字段名改为它们表的名字。

-2945        你只能对表而不能对字段使用添加,修改,查询,或删除命令。

只能在与表相联的显示字段上(不能在DISPLAYONLY显示字段上)执行聚合(AVG,
MIN,MAX,COUNT,TOTAL),并且表必须列在同一控制块的打开命令中。修正屏幕表格
说明并重新编译。

-2946        你不能在只能显示的显示字段<名称>上计算一个聚合。

只能在与表相联的显示字段上(不在DISPLAYONLY显示字段)执行聚合,并且表必须列在
同一控制块的打开命令中。修正屏幕表格说明并重新编译。

-2950        字段<名称>没有从1开始的节。记住,第一个下标是1,不是0。

来自同一个字段的多重子串被定义为显示的显示字段。可是,该子串没有覆盖毗连
的,字段的非重迭部分。或者没有第一节(从字段1开始),或者一节与另一节重迭。
重新检查指定的子串,考虑使用一个多行编辑显示字段替代一组子串;更简单的办法
是去编码并为数据输入提供更好的编辑。
阅读(776) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~