首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

怎么用delphi语言将硬盘中excel数据导入到sql 中

2013-06-25 
如何用delphi语言将硬盘中excel数据导入到sql 中我想将硬盘中特定文件夹中的几个excel表中的数据分别导入

如何用delphi语言将硬盘中excel数据导入到sql 中
我想将硬盘中特定文件夹中的几个excel表中的数据分别导入到几个数据库表中!用delphi语言实现!
[解决办法]
在论坛里搜索“delphi excel”
[解决办法]
这个不是很难,只要你excel命名规范
[解决办法]
这个用 ADO 连接 Excel 即可办到。假设你的 Excel 里表的列定义与数据库里的表的列定义一致,就更好办了。以下的代码,示范如何从一个 Excel 文件提取表名,然后用 AODTable 打开某个表。如果要导出数据并插入到 DB,只需遍历 Excel 表记录,在 DB 做插入记录操作即可。
procedure Tcl2form.conntable(fName:string);
Var
    ConnStr: String;
    StrList:TSTringList;
begin
    ADOConnection1.Close;
    ADOTable1.Active := False;

    ConnStr := ConnStr + 'Provider=Microsoft.Jet.OLEDB.4.0;User Source=';
    ConnStr := ConnStr + fName;
    ConnStr := ConnStr + ';Mode=ReadWrite;Extended Properties=Excel 8.0;';
    ConnStr := ConnStr + 'Jet OLEDB:System database="";';
    ConnStr := ConnStr + 'Jet OLEDB:Registry Path="";';
    ConnStr := ConnStr + 'Jet OLEDB:Database Password="";';
    ConnStr := ConnStr + 'Jet OLEDB:Engine Type=35;';
    ConnStr := ConnStr + 'Jet OLEDB:Database Locking Mode=0;';
    ConnStr := ConnStr + 'Jet OLEDB:Global Partial Bulk Ops=2;';
    ConnStr := ConnStr + 'Jet OLEDB:Global Bulk Transaction_s=1;';
    ConnStr := ConnStr + 'Jet OLEDB:New Database Password="";';
    ConnStr := ConnStr + 'Jet OLEDB:Create System Database=False;';
    ConnStr := ConnStr + 'Jet OLEDB:Encrypt Database=False;';
    ConnStr := ConnStr + 'Jet OLEDB:Don''t Copy Locale on Compact=False;';
    ConnStr := ConnStr + 'Jet OLEDB:Compact Without Replica Repair=False;';
    ConnStr := ConnStr + 'Jet OLEDB:SFP=False';

    ADOConnection1.ConnectionString := ConnStr;
    ADOConnection1.LoginPrompt := False;
    ADOConnection1.Connected := true;  //连接excel;

    StrList:=TSTringlist.Create;
    ADOConnection1.GetTableNames(StrList,false);----目前发现如果EXCEL的表名是全部中文的话会获取不到,郁闷ING!还没解决!
    //showmessage(strlist[0]);
    ADOTable1.TableName := '[' + strlist[0] + ']'; //Edit1.Text 是excel的一个表名
    ADOTable1.Active := true; //打开一个表;
    STrlist.Free;

end;



[解决办法]

友情帮顶下!顺便学习学习!

热点排行