result1 := Query1.Fields[0].AsFloat;
  AddWork:=result1-BaseWork;
  if AddWork<=0 then AddWork:=0;
  sqlString1:='update TeacherTask set AllWork='+''''+floattoStr(result1)+'''';
把floattoStr(result1)+写进表以后,该列的值小数点后有十几位,我只想要一位怎么办??

解决方案 »

  1.   

    用formatfloat函数可以来进行格式化的。
    如:formatfloat('0.00',adoquery1.fields[0].AsFloat);
    其结果就是字符型的。
      

  2.   

    用formatfloat函数可以来进行格式化的
      

  3.   

    楼主的问题没有办法控制
    楼上各位提到的方法都不能解答楼主的问题是数据库自身的缘故
    楼主用的应该是sql server数据库
    只能在显示的时候加以控制
    如果用dbgrid组件设置
    displayfomat属性即可
    edit组件参考楼上方法转换为字符串解决
      

  4.   

    以上方法都不行,无奈呀
    dbgrid组件没有displayfomat属性呀.
      

  5.   

    哈哈!出来了我用了floattostrF()函数