请教400 ILE C编程中一问!

发表于:2007-06-08来源:作者:点击数: 标签:
在ILEC中由如下嵌入 sql 语句: execsqldeletefromwdls241 wherewdls241001=:taskidStr;[/b] 其中wdls241001为varchar(8),chartaskidStr??(9??); 程序执行返回错误为sqlcode=-7008,(查其原因是: SQL 7008NREXX变量"变量"包含不一致的数据。将包含不一致数

在ILE C中由如下嵌入sql语句:
exec sql delete from wdls241
                    where wdls241001 = :taskidStr;[/b]
其中wdls241001 为varchar(8),char taskidStr??(9??);
程序执行返回错误为sqlcode = -7008,(查其原因是:SQL7008N REXX 变量 "<变量>" 包含不一致的数据。将包含不一致数据的变量传送给了 REXX)
 
我在新建立小测试程序中把where wdls241001 = 'A0000001',其中A0000001在表中存在,同样报sqlcode = -7008
请教各位大侠,这是为什么啊???怎么解决呢???

 richardyang 回复于:2004-06-02 16:04:24
这个最可能的就是wdls241这个表没有被journal,用strjrnpf记录一下就没事了。

 happyzbo9118 回复于:2004-06-02 17:16:49
先感谢richardyang的热情解答!
我把原来的表删除掉重新备份了一下!问题就解决了,我想如果用你的说的方法应该也是正确的;我曾用AS/400导航器来添加库中的数据,当时提示修改的数据没有被journal或者我没有权限journal,问我是否继续,我继续了,而后也曾删掉过数据,不过后来就出这问题了!
-------------------------
我对400是新手,所以很多东西不会,请大家多多指教!

 happyzbo9118 回复于:2004-06-02 17:17:37
先感谢richardyang的热情解答!
我把原来的表删除掉重新建立了一下!问题就解决了,我想如果用你的说的方法应该也是正确的;我曾用AS/400导航器来添加库中的数据,当时提示修改的数据没有被journal或者我没有权限journal,问我是否继续,我继续了,而后也曾删掉过数据,不过后来就出这问题了!
-------------------------
我对400是新手,所以很多东西不会,请大家多多指教!

原文转自:http://www.ltesting.net