procedure Tfrmmain.N50Click(Sender: TObject);
var
X: OleVariant;
sourcefiles,tempfiles:string;
begin
sourcefiles:=extractfilepath(application.exename)+'data\infobase.mdb';
tempfiles:=extractfilepath(application.exename)+'data\temp.mdb';
dm.infobase.Connected:=false;
try
X:= createoleobject('JRO.JetEngine');
x.CompactDatabase('Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+sourcefiles+'','Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+tempfiles+'');
if fileExists(sourcefiles) and FileExists(tempfiles) then
if deleteFile(sourcefiles)then
RenameFile(tempfiles,sourcefiles);
except
x.Release;
end;
dm.infobase.Connected:=true;
end;//这是对ACCESS2000的。
另外要uses comobj
var
X: OleVariant;
sourcefiles,tempfiles:string;
begin
sourcefiles:=extractfilepath(application.exename)+'data\infobase.mdb';
tempfiles:=extractfilepath(application.exename)+'data\temp.mdb';
dm.infobase.Connected:=false;
try
X:= createoleobject('JRO.JetEngine');
x.CompactDatabase('Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+sourcefiles+'','Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+tempfiles+'');
if fileExists(sourcefiles) and FileExists(tempfiles) then
if deleteFile(sourcefiles)then
RenameFile(tempfiles,sourcefiles);
except
x.Release;
end;
dm.infobase.Connected:=true;
end;//这是对ACCESS2000的。
另外要uses comobj
解决方案 »
- 赚分,马上结...
- 如何去掉?“VCLSKIN DEMO”
- 关于线程池
- 鼠标移到按钮上面时, 按钮有一定的运作回应。
- DBGrid自画组件如何实现?
- 在win2000下,怎么让程序不出现在程序列表中啊?
- 如果想用QR加上PrintDialog控件来设置打印范围应该怎样实现呢?
- 什么都郁闷?!唉~~~~~~散分~~~~
- 如何用interbase中file->connect to database联上local interbase????
- 还有哪位在通宵
- ADO Jet 4.0的ADOX.Catalog与JRO.JetEngine还有其它什么功能?
- 征求一个教学程序,用TreeView来实现资源管理器的目录列表功能。
....
X:= createoleobject('JRO.JetEngine');
s1:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=e:\xsgl.mdb;Jet OLEDB:Database Password=111111';
s2:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=e:\xsgl1.mdb;jet OLEDB:Database Password=111111';
x.CompactDatabase(s1,s2);
....
没密码的话可以去掉jet OLEDB:Database Password=111111
dao: OLEVariant;
begin
dao := CreateOleObject('DAO.DBEngine.35');
dao.CompactDatabase('d:\yourDatabaseName.mdb',
'd:\yourNewCompactedDatabaseName.mdb');
end;
怎么提示 'could not find installable ISAM'
....
X:= createoleobject('JRO.JetEngine');
s1:='Provider=Microsoft.Jet.OLEDB.3.51;Data Source=e:\xsgl.mdb;Jet OLEDB:Database Password=111111';
s2:='Provider=Microsoft.Jet.OLEDB.3.51;Data Source=e:\xsgl1.mdb;jet OLEDB:Database Password=111111';
x.CompactDatabase(s1,s2);
....
没密码的话可以去掉jet OLEDB:Database Password=111111
您的方法有效不过有密码的库,压缩后如果还保留密码的话出现“找不到成员”的错误,请指示。 一定加分。
'ADOX.Catalog'还有什么功能 ?!