我正在开发 IBM iseries v6r1m0 系统。
我正在尝试执行一个非常简单的查询:
select * from XG.ART where DOS = 998 and (DES like 'ALB%' or DESABR like 'ALB%')
这些列是:
DOS -> numeric (3,0)
DES -> Graphic(80) CCSID 1200
DESABR -> Garphic(25) CCSID 1200
我得到:
SQL State : 58004
SQL Code : -901
Message : [SQL0901] SQL System error.
Cause . . . . . : An SQL system error has occurred. The current SQL statement cannot be completed successfully. The error will not prevent other SQL statements from being processed. Previous messages may indicate that there is a problem with the SQL statement and SQL did not correctly diagnose the error. The previous message identifier was CPF4204. Internal error type 3107 has occurred. If precompiling, processing will not continue beyond this statement.
Recovery . . . : See the previous messages to determine if there is a problem with the SQL statement. To view the messages, use the DSPJOBLOG command if running interactively, or the WRKJOB command to view the output of a precompile. An application program receiving this return code may attempt further SQL statements. Correct any errors and try the request again.
如果我将 DES 更改为 REF(图形(25)),它可以工作......
编辑 :
今天下午我进行了一些测试,这很奇怪:
在创建表/索引之后,我没有错误。
- 如果我插入一些数据:错误
- 如果我清除表格:错误
- 如果我删除索引(见下文):它可以工作(有或没有数据)!
指数为:
create index XG.GTFAT_ART_B on XG.ART(
DOS,
DESABR,
ART_ID
)
编辑 2:
这是工作日志(对不起,它是法语...)
它说:
Function error X'1720' in machine instruction. Internal snapshot ID 01010054
Foo file created in library QTEMP.
*** stuff with the printer
DBOP *** FAILED open. Exception from call to SLIC$
Internal error in the query processor file
Sql system error