数据库字段设置为DECIMAL(12,6)
用DBEDIT控件连该字段。
当输入0.00005时,保存会自动变为0
当输入9.99999时,又会自动变成10
可是如果小数位不超过4位就不会有问题。
开发环境
WIN2000PROFESSIONAL中文版+SP3
DELPHI6+SP2
SQLSERVER2000英文版。

解决方案 »

  1.   

    这不是delphi的问题,是你在赋值的时候有问题,还有如果你用的是事务或过程看看变量的声明类型及大小。
      

  2.   

    可以肯定绝对不是delphi的问题,应该你定义类型或者操作赋值的问题
      

  3.   

    那还不如直接设置为numeric(12,6)类型
      

  4.   

    检查一下你的BDE或数据集的BCD属性,改一下试一下
      

  5.   

    DBEdit1.MaxLength设置一下试试。
      

  6.   

    belllab(bell) :
    果然是BCD属性问题。
    将ADODATASET的ENABLEBCD设置为FALSE就好了。
    可是,双产生一个副问题比如输入:0.00005会自动显示成5E-5
    可是用户不想要这样显示,请问该如何做呢?如果分不够的话,我可以再开一个问题来加分。
      

  7.   

    belllab(bell)  :
    对不起,分给错了。