excel导入数据库出错;代码如下:
procedure TOperateDataSource.Button1Click(Sender: TObject);
var
str:string;
i:integer;
begin
try
OpenDialog1.Filter:='Execl文件(*.xls;*.xlsx)|*.xls;*.xlsx';
if not OpenDialog1.Execute then exit; With ADOQuery1 do
begin
ParamCheck:=false;
str:='select * '
+' FROM OpenDataSource(''Microsoft.ACE.OLEDB.12.0'','
+' ''Data Source="'+OpenDialog1.FileName
+'"; Extended Properties="Excel 12.0;HDR=Yes;";'
+' Persist Security Info=false'')...[Sheet1$]'; Close;
SQl.Text:=str;
Open;
end;
except
Application.MessageBox('导入Excel出错!','提示');
end;
for i:=0 to DBGrid1.Columns.count-1 do
begin
DBGrid1.Columns[i].Width:=100;
DBGrid1.Columns[i].Title.Color:=clgreen;
DBGrid1.Columns[i].Title.Alignment:= taCenter;
end;
{
DBGrid1.Columns[0].Width:=100;
DBGrid1.Columns[1].Width:=150;
DBGrid1.Columns[2].Width:=100;
}end;
结果程序在装有sqlserver2005数据库的服务器上运行正常,而在其它客户端机子上报"导入Excel出错!",是不是远程访问有权限问题,如果是,如何获得权限,求帮助。delphiExcel数据库OpenDataSource
procedure TOperateDataSource.Button1Click(Sender: TObject);
var
str:string;
i:integer;
begin
try
OpenDialog1.Filter:='Execl文件(*.xls;*.xlsx)|*.xls;*.xlsx';
if not OpenDialog1.Execute then exit; With ADOQuery1 do
begin
ParamCheck:=false;
str:='select * '
+' FROM OpenDataSource(''Microsoft.ACE.OLEDB.12.0'','
+' ''Data Source="'+OpenDialog1.FileName
+'"; Extended Properties="Excel 12.0;HDR=Yes;";'
+' Persist Security Info=false'')...[Sheet1$]'; Close;
SQl.Text:=str;
Open;
end;
except
Application.MessageBox('导入Excel出错!','提示');
end;
for i:=0 to DBGrid1.Columns.count-1 do
begin
DBGrid1.Columns[i].Width:=100;
DBGrid1.Columns[i].Title.Color:=clgreen;
DBGrid1.Columns[i].Title.Alignment:= taCenter;
end;
{
DBGrid1.Columns[0].Width:=100;
DBGrid1.Columns[1].Width:=150;
DBGrid1.Columns[2].Width:=100;
}end;
结果程序在装有sqlserver2005数据库的服务器上运行正常,而在其它客户端机子上报"导入Excel出错!",是不是远程访问有权限问题,如果是,如何获得权限,求帮助。delphiExcel数据库OpenDataSource
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货