在哪里加密码?
一个ADOConnection控件,专门用来连接Excel,一个OpenDialog1,用来选择你所需要的Excel表,两个ADOQuery,一个DBGrid,一个DataSource, ADOQuery1连ADOConnection,DataSource连ADOQuery,DBGrid连DataSource ADOQuery2连接SQL Server
var
dbname:string;
begin
if OpenDialog1.Execute then
edit1.Text:=OpenDialog1.FileName;//这是所要操作的EXCEL文件名
if trim(edit1.Text)<>'' then
begin
//取得无扩展名文件名,打开Excel时用
dbname := LeftStr(ExtractFileName(trim(edit1.Text)),pos('.',ExtractFileName(trim(edit1.Text)))-1);
ADOConnection1.Connected:=false;
ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+trim(edit1.Text)+';Extended Properties=EXCEL 8.0;Persist Security Info=False';
ADOConnection1.Connected:=true;
with ADOQuery1 do
begin
Close;
SQL.Clear;
SQL.Add('select * from ['+dbname+'$]');
Open;
end;
end;
通过上在,你已于你所需要的Execl表连接起来,既已将你所需要的Execl表置于DBGrid;
接下来,你只需要将DBGrid里的数据一条条导入SQL Server
var
a_filedNo,a_recno,j :integer;
sqlstr,sqlstr1:string;
begin
a_filedNo :=ADOQuery1.FieldCount;//每一行的列数
try
a_recno := 1;
ADOQuery1.First;
while not ADOQuery1.Eof do
begin
for j :=1 to a_filedNo do //转化一个记录,你可以在此进行修改或什么的
begin
sqlstr1:=sqlstr1+''''+ADOQuery1.Fields[j-1].AsString+''''+',';
end;
sqlstr:='insert into 你要导入的表名 values('+sqlstr1+')';
with ADOQuery2 do
begin
close;
SQL.Clear;
SQL.Add(sqlstr);
ExecSQL;
end;
ADOQuery1.Next; ;
a_recno := a_recno + 1;
sqlstr1:='';
sqlstr:='';
end;
application.MessageBox('数据导入成功!','系统提示',MB_Ok+MB_IconInformation+MB_ApplModal);
except
application.MessageBox('打开Excel文件失败!','系统提示',mb_ok or mb_iconstop);
end;
解决方案 »
- 当鼠标悬停在一个TDBGrid的一个cell时候,如何获得鼠标所在的row和cell.
- 认为删除了程序目录下的一些dll文件导致程序异常,这些算不算软件没有健壮性?
- QuickRep控制问题
- 因为有大家的积极参与,程序员在深圳QQ群已经到第十群了,达1400人,第十群群号是:17541586
- delphi怎样实现这样的文件复制?[悬赏50分]
- 如何解决TStringGrid单元格闪烁不停的问题?
- 为什么不能注册COM对象??
- 把空值转为免费
- how can I kill a person
- 在 win7系统下 如何使用delphi内嵌汇编读写0x60端口
- delphi的isapi程序如何发布到 server 2003的 iis6中, xp 下iis5 已经可用,但按照同样的办法在2003的iis6下不行
- Ctrl+Shift+C 快捷键失效
你的方法我试了下,提示不能解密文件!!请赐教~
OpenDialog1.Execute;
if OpenDialog1.FileName='' then
begin
Exit;
end;
TRY
with self.ADOConnection1 do
begin
Close;
ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='''+OpenDialog1.FileName+''';Extended Properties=Excel 8.0;Persist Security Info=False;Jet OLEDB:Database Password=123';
open;
end;
EXCEPT
Application.MessageBox('连接文件出错!', '提示', MB_OK +MB_ICONINFORMATION + MB_DEFBUTTON3);
exit;
END;
提示不能解密文件!!