hur.cn - 华软网

 热门搜索

关于数据保存时精度的问题

  作者:未知    来源:网络    更新时间:2017/1/11
我的数据窗口中有一列为数值型,小数位为6

实际录入时,可以录入6位小数,如123.456789
但显示要显示成四舍五入后的3位小数123.457,存入数据库中的也是这个四舍五入后的数据123.457.

1\将此列的format属性里设成0.000
2\将edit.format属性设成0.000


但存入数据库里面的仍是123.45678
------华软网友回答------
为什么数据库里面的字段类型不直接设置成3位的。
------华软网友回复------
1.你可以将此列的editmask设置为###,###,##0.000,这样123.456789就录入不进去了,只能录入123.456

2.在保存时做一下处理,把数据处理一下。

3.format属性只是显示的格式,与数据的存储没有关系,你可以设置editmask来实现
------华软网友回复------
在保存事件中作处理比较浪费时间,我的数据窗口是grid的
在itemchanged事件中做处理还达不到效果
我想用dw_1.object.column[row] = round(dw_1.object.column[row],3)不知该写到那个事件中

------华软网友回复------
1.列的format属性仅在显示时有效,录入时是无效的
2.设置edit.editmask设置为###,##0.000,但这样仅是去掉小数位,并不四舍五入,如果要四舍五入,必须在保存前利用round()函数进行逐行休整,当然也可以在itemchanged事件中休整
     
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。