昨天写好的程序一切正常,可到今天去测试发现这样一个错误从.net里报出这样一个错误"存取器不是参数存取器"于是跟踪SQL语句放到ORACLE里查一切正常能查到数据.从早上一直到下午也没发现这个问题到底是出在哪里,到网上查也没解决问题的的答案,有人说是ORACLE版本问题,也有人说是客户端问题!
非常偶然同事从旁边经过,正好看到数据表里的内容怎么会有这个长的小数,也许问题就是在这里,因为这张表是通过触发器计算后的平均值,没有做任何处理带了N多小数,通过字段重命名的方式保存,问题有可能就是这个类型的问题,我试着把算后的平均值通过round和trunc处理后,因为要生成图表X坐标,所取整影响不大,就这么做了,果然错误不再出现了!
总结:对于这样错误,虽然跟踪SQL语句没有发现任何问题,但错误告诉我们不要看表面想象,还是要从SQL结果本质根和读出字段内容的方式去分析.