DELPHI 7 使用ADO元件寫入資料庫強制四捨五入小數到第四位問題

parameters.parambyname('tmpprice').datatype:=ftFloat; <==寫入資料前先將欄位設定成 Float 型態即可解決此問題。

參考:http://jzinfo.javaeye.com/blog/432853

  1. var
  2. adoquery1:Tadoquery;
  3. begin
  4. adoquery1:=Tadoquery.create(nil);
  5. try
  6. if not DM.adonconnection1.connected then
  7. DM.adoconnection1.connected:=true;
  8. adoquery1.connection:=DM.adoconnection1;
  9. adoquery1.enableBCD:=False; //禁用bcd类型
  10. with adoquery1 do
  11. begin
  12. close;
  13. sql.clear;
  14. sql.add('insert into materialInfo values(:tmppno,:tmpvendor,:tmpdesc,:tmpprice)');
  15. parameters.parambyname('tmppno').value:=trim(edit1.text);
  16. parameters.parambyname('tmpvendor').value:=trim(edit2.text);
  17. parameters.parambyname('tmpdesc').value:=trim(edit3.text);
  18. parameters.parambyname('tmpprice').datatype:=ftFloat; //设置下数据类型
  19. parameters.parambyname('tmpprice').value:=trim(edit4.text);
  20. execsql;
  21. end;
  22. finally
  23. adoquery1.free;
  24. end;
  25. end;
文章標籤
全站熱搜
創作者介紹
創作者 NoMoney NoHoney 的頭像
NoMoney NoHoney

No Money No Honey

NoMoney NoHoney 發表在 痞客邦 留言(0) 人氣(0)