将EXCEL导入MDB数据库,金额如何只保留2位小数,高手们请进

he59195 2013-11-17 02:37:18
将EXCEL导入MDB数据库,金额如何只保留2位小数?EXCEL里有的金额为235.4599或3902.497这样的,我想导入数据库后只保留小数后两位就可以,下面是我导入数据库的代码:
procedure Tfrm_dfcz.BitBtn1Click(Sender: TObject);
var
tmp,sqlstr1,sqlstr2,tbname:string;
rectotal,i:integer;
insertsql:tadotable;

begin
tbname:=combobox1.text;

if checkbox1.Checked then
begin

adoquery1.SQL.Clear;
adoquery1.SQL.Add('delete from '+tbname+' ');
adoquery1.ExecSQl;
end;

try

insertsql:=tadotable.Create(nil);
insertsql.Connection:= ADOConnection2;
insertsql.TableName:=combobox1.Text;
insertsql.Active:=true;
ds1.First;
insertsql.First;
while not ds1.Eof do
begin
insertsql.Append;
for i:=0 to listbox3.Count-1 do //分解字段,这里我是按两个LISTBOX框进行选择相应字段后到另一个LISTBOX框后进行字段分解后按需要的字段进行导入到数据的,这里我有姓名,帐号,金额,身份证,我想将金额这个字段导入数据库保留两位小数
begin
tmp:= listbox3.Items.Strings[i];
sqlstr1:=copy(tmp,0,pos('=',tmp)-1);
sqlstr2:=copy(tmp,pos('=',tmp)+1,length(tmp)-pos('=',tmp));
insertsql.FieldByName(sqlstr1).Value:= ds1.fieldbyname(sqlstr2).AsString;
end;

insertsql.Post;
ds1.Next;
end;
application.MessageBox('数据导入成功,请点击下一步继续','任务提示',mb_ok);
bitbtn2.enabled:=true;
tabsheet2.Enabled:=true;


// rzpagecontrol1.ActivePage:=tabsheet2;
except
//ON E:exception do
showmessage('数据导入出错,请检查相应项目是否选择或打开文件');
end;
end;
...全文
420 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Wang-Ping 2013-11-28
  • 打赏
  • 举报
回复
if sqlstr2= '金额' then insertsql.FieldByName(sqlstr1).Value:=Format('%.2f' ,[ds1.fieldbyname(sqlstr2).AsFloat]);
monkely 2013-11-17
  • 打赏
  • 举报
回复
查下RoundTo
he59195 2013-11-17
  • 打赏
  • 举报
回复
生成TXT如这样 00001阿怀 68851201018888235535000003929388510282198010153 00002阿丁 68851201018888235535000003929388510282198010153 依次类推...... 如数据库有10条,则最后一个序号就是0001至00010

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧