sqlserver某字段为number型,有四位小数,使用tdbedit控件相关联,当输入3000.5123后,总是自动转换成3000.5122,我也知道这是DELPHI浮点转换问题,绝不是SQLSERVER问题,不要告诉我使用什么format等函数,怎么解决?我是要存到数据库内,不是显示在某个edit输入框内。

解决方案 »

  1.   

    用roundto(num,-2)就是保留2位小数的意思,然后存到数据库,在库里用单精度数作字段
      

  2.   

    RoundTo(num,-4)
    format('%*.f')
    Format('x=%d', [12]); //'x=12' //最普通
    Format('x=%3d', [12]); //'x= 12' //指定宽度
    Format('x=%f', [12.0]); //'x=12.00' //浮点数
    Format('x=%.3f', [12.0]); //'x=12.000' //指定小数
    Format('x=%.*f', [5, 12.0]); //'x=12.00000' //动态配置
    Format('x=%.5d', [12]); //'x=00012' //前面补充0
    Format('x=%.5x', [12]); //'x=0000C' //十六进制
    Format('x=%1:d%0:d', [12, 13]); //'x=1312' //使用索引
    Format('x=%p', [nil]); //'x=00000000' //指针
    Format('x=%1.1e', [12.0]); //'x=1.2E+001' //科学记数法