廣告

2021 年 5 月
 12
3456789
10111213141516
17181920212223
24252627282930
31  

彙整

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

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; 

讀者也會看的其它文章:

    Comments are closed.