如何把excel 變成delphi 的數據庫(可讀寫)(100分)

  • 主题发起人 主题发起人 choipan
  • 开始时间 开始时间
C

choipan

Unregistered / Unconfirmed
GUEST, unregistred user!
1 我先把excel 變成csv 格式文件
2 然後我用delphi ado 控件調入csv 文件..但只可讀..不可以寫,各位高手有什么方法可以解決嗎? 因為我要把原來excel 的數據變成用數據庫...我用的是delphi6+officexp
3. 請各位大大提供方法...
謝謝
 
//可以把Excel文件当作一个数据库来对待:Database,
//Excel文件里的工作表标签主相当表一个一个的表:Table
//这样你就可以随心所欲地操作它了,与正常的数据库操作完全一样,
//添加修改删除均可以,操作前你的Excel文件不能打开

//在窗体上放以下控件
//ADOConnection1,ADOQuery1,DataSource1,DBGrid1

procedure TForm1.Button1Click(Sender: TObject);
var
ConnStr, FileName, TableName: string;
begin
FileName:= 'F:/Excel1.xls'; //这是你的Excel文件名,换成你的就可以了
TableName:= '[Sheet1$]'; //这是你的Excel文件里的工作表标签,记得加上$符号,你的Excel文件可能会不同.
ConnStr:= ''+
' Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=Admin; ' +
' Data Source=' + FileName + ';Mode=Share Deny None;Extended Properties=Excel 8.0; ' +
' Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password=""; ' +
' Jet OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2; ' +
' Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB: ' +
' Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don''t Copy Locale on Compact=False; ' +
' Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False ';
ADOConnection1.Connected:= false;
ADOConnection1.ConnectionString:= ConnStr;
ADOConnection1.Connected:= true;
ADOQuery1.Close;
ADOQuery1.SQL.Text:= 'select * from ' + TableName;
ADOQuery1.Open;
end;

//记得把分给我哦,在d6上调试成功的.
 
接受答案了.
 
后退
顶部