我是菜鸟!!!我用delphi编了一段代码,怎么也不能将excel中的内容导入到数据库中。。。。。。。

运行时没有错误!请高手指教!!!procedureread_XLS_sy(filename:string);varexcelapp:OleVariant;exceldoc... 运行时没有错误!请高手指教!!!
procedure read_XLS_sy(filename:string);
var
excelapp:OleVariant ;
exceldoc:OleVariant;
config_index,row,TuHao,i:integer;
configfile:tstringlist;
config_str,instring,T_Konghao:string;
VarStr:Variant;
bookmark1:pointer;
begin
if not fileexists(filename) then exit;
excelapp:=GetexcelObject();
exceldoc:=excelapp.WorkBooks.open(filename);
ins:=false;
configfile:=tstringlist.Create;
configfile.LoadFromFile(sysdir+'\system\config.ini');
config_index:=strtoint(configfile.Strings[0]);
if config_index<configfile.Count then config_str:=configfile.Strings[config_index] else exit;
ins:=false;
try
labDlg.Label1.Caption:='正在读取试验数据...';
labDlg.Caption:='导入试验数据';
labdlg.ProgressBar1.Position:=1;
labdlg.ProgressBar1.Min:=1;
labdlg.ProgressBar1.Max:=exceldoc.worksheets[1].UsedRange.Cells.Rows.Count;
labdlg.Show;
labdlg.ProgressBar1.Visible:=true;
dm1.KongXin.DisableControls ;
bookmark1:=dm1.KongXin.GetBookmark ;
shuru.Refresh ;
TuHao:=1;
row:=1;
while row< exceldoc.worksheets[1].UsedRange.Rows.Count do
begin
labDlg.Label1.Refresh ;
labdlg.ProgressBar1.StepIt;
config_str:=configfile.Strings[config_index];
if (VarType(exceldoc.worksheets[1].cells[row,1].value)=0) or (VarType(exceldoc.worksheets[1].cells[row,1].value)>5) then
begin
inc(row);
continue;
end;
instring:='' ;
for i:=1 to 40 do
begin
VarStr:=exceldoc.worksheets[1].cells[row,i].value;
if VarType(VarStr)=8 then instring:=instring+VarStr+#9
else
if VarType(VarStr)=5 then instring:=instring+floattostr(VarStr)+#9
else instring:=instring+#9;
end;
Read_sy(config_str,instring,TuHao,T_Konghao) ;
inc(TuHao);
inc(row);
end;

except
ins:=true;

if dm1.shiyan.state in [dsedit,dsinsert] then dm1.shiyan.cancel;
dm1.KongXin.GotoBookmark(bookmark1) ;
dm1.KongXin.freeBookmark(bookmark1) ;
dm1.KongXin.EnableControls;

ins:=true;
configfile.free;
if excelapp.Visible then exceldoc.close else excelapp.Quit;
labdlg.Close ;
exit;
end;

ins:=true;
dm1.KongXin.GotoBookmark(bookmark1) ;
dm1.KongXin.freeBookmark(bookmark1) ;
dm1.KongXin.EnableControls;
ins:=true;
if excelapp.Visible then exceldoc.close else excelapp.Quit;
labdlg.Close ;
configfile.free;

end;
你有相关的导入到数据库中的实际代码吗?
展开
 我来答
songsheping
2011-02-12 · 超过44用户采纳过TA的回答
知道小有建树答主
回答量:107
采纳率:0%
帮助的人:130万
展开全部
这段代码中只有读Excel文件的功能,没有存入数据库的功能,所以你就不能将其内容导入到数据库中了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
conan415
2011-02-18 · TA获得超过138个赞
知道小有建树答主
回答量:146
采纳率:0%
帮助的人:208万
展开全部
你需要 ADOConnect,连接Database,
ADOQuery q,
然后 q.open;
q.insert;
q.fieldbyname('xxx').asString := 'xxx1';
q.fieldbyname('yyy').asString := 'yyy1';
...
q.post;
q.close;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
76100434
2011-02-17 · 超过33用户采纳过TA的回答
知道答主
回答量:124
采纳率:0%
帮助的人:72万
展开全部
读取的同时,添加数据库写入的功能即可。
你这个只是读取,而无法写入啊
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式