How to use dao library to repair and create db? |
|
aauhk
一般會員 發表:7 回覆:5 積分:2 註冊:2002-03-12 發送簡訊給我 |
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,DAO_TLB, Forms, Dialogs, JRO_TLB,StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} const Provider = 'Provider=Microsoft.Jet.OLEDB.4.0;'; SrcMDB = 'c:\retdata\dbmas.mdb'; DstMDB = 'c:\retdata\dbmas1.mdb'; procedure TForm1.Button1Click(Sender: TObject); var DbEng : DBEngine; DbTabledef : Tabledef; JetEng : JetEngine; db : database; dbfilename : string; Src : WideString; Dest : WideString; caccess:variant; begin DbEng := CoDBEngine.Create ; DbTabledef :=CoTabledef.Create ; JetEng :=CoJetEngine.Create ; Src := Provider 'Data Source=' dbfilename; Dest := Provider 'Data Source=' DstMDB; dbfilename :='c:\retdata\abc.mdb'; db:= DbEng.OpenDatabase(Src); //OpenDatabase(dbfilename); try If FileExists(DstMDB) Then DeleteFile(DstMDB); //raise Exception.Create('Cannot locate Paradox data files'); //DeleteFile(DstMDB); //JetEng.CompactDatabase(Src, Dest); //DbEng.CompactDatabase (Src,Dest,'c:\retdata'); JetEng.CompactDatabase (Src, Dest); finally JetEng := Nil; DbEng :=Nil; end; end; end. |
領航天使
站長 發表:12216 回覆:4186 積分:4084 註冊:2001-07-25 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |