起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 142|回复: 3

【结】FMTBcd Scale no match

[复制链接]
发表于 2009-8-18 16:49:30 | 显示全部楼层 |阅读模式
lQuery.CommandText:=' select sum(case '
                      +'              when terminalpolicytbl.rablefee /**/ '
                      +'                   <> 0 then '
                      +'               terminalpolicytbl.rableCommi /**/ '
                      +'               / terminalpolicytbl.rablefee /**/ '
                      +'              else '
                      +'               0 '
                      +'            end) / count(*)  as RecordCount '
                      +'   from terminalpolicytbl, policy_ins '
                      +'  where terminalpolicytbl.guid = policy_ins.policy_id '
                      +'    and policy_ins.ismain = ''True'' '
                      +'    and terminalpolicytbl.dockind = ''0'' '
                      +' and policy_ins.insType='''+strType+''' and '+dateString2+' and '+corpFilter;
               //if 1=1 then;
               lQuery.Open;
执行到lQuery.open报错:
java.lang.Exception: error occur during invoke getRecords method, FMTBcd Scale no match: 40(Def: 8)
我还没有对数据集进行赋值呢,我这个语句跟踪出来拿到pl/sql developer执行是对的。结果是 0.160689654152722
难道query本身还对小数位数有限制?
版本是2617
回复

使用道具 举报

发表于 2009-8-18 17:07:26 | 显示全部楼层
应该是小数位数的问题,用“FMTBcd*Scale*match ”看看能否解决一下你的问题
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-18 17:12:08 | 显示全部楼层
不能。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-8-18 17:13:17 | 显示全部楼层
我自己解决了,转换为字符型的to_char就没有问题了。
应该是Query本身的问题。
谢谢 结贴。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-17 20:40 , Processed in 0.037673 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表