使用一下oracle的round方法吧
四舍五入一下应该就好了!
有关于计算的,最外层都用了Round,其他没参与计算的字段也要吗?
@Memento: 如果你都使用了,应该就不会出现这个问题了
@刘宏玺: 现在问题就是我用Round了,结果还会报这个错误,而且是间歇性没规律的冒出来的...甚是纠结...
@Memento: 那我也不清楚了,一般我遇到类似的问题都是精度照成的
@刘宏玺: 如果一个字段设置成NUMBER,并且不设置其精度和小数位数,然后再导入数据(C#的int类型数据),会不会出现导入的其实不是整型数据,而是什么.999999999...之类的?
@Memento: 应该不会,number的默认精度是float 38
sql语句虽然一样,但是值不一样。C#有 有符号和无符号数,,java只有 有符号整数。Oracle是属于java的。。你研究一下,在保存值的时候,如何把C#的byte转成sbyte
您的意思是:同样的SQL语句,第一次跑和第二次跑出来的值会不一样?...那就麻烦了!保存值是内部封装好的,而且其他SQL语句都没有这个问题,所以应该跟保存值操作没有关系。
@Memento: 你Oracle客户端版本是多少?
@弦断有谁听: 11.2.0
@Memento: 你用oracle.dataaccess连接数据库,不要用微软自身的System.Data.Oracle......试试
@Memento:哪个数据遇到问题了,你调试看看啊,看数据和其他数据有什么区别