ACCESS数据库缩小问题? 在DELPHI程序里建一个TADOconnection,它是在程序运行就开始一直连接一个ACCESS的数据库,中间不能断,再放一个时钟,时钟运行缩小这个数据库的代码,请问这个代码如何写? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 时钟运行缩小这个数据库的代码------------------------------啥子意思哦?是不是压缩数据库?如果是可以这样varX: OleVariant;begin X:= createoleobject('JRO.JetEngine'); x.CompactDatabase('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Nwind2k.mdb','Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\nwind2kdelphi.mdb')end; 程序中用到你,看看有没有用:procedure CompactAccess(dbName: string; JetId: string = '4.0'); //压缩var AVariant: Variant;begin if FileExists(dbName + '.tmp') then DeleteFile(DbName + '.tmp'); AVariant := CreateOleObject('JRO.JetEngine'); AVariant.CompactDataBase('Provider=Microsoft.Jet.OLEDB.' + JetId + ';Data Source=' + dbName , 'Provider=Microsoft.Jet.OLEDB.' + JetId + ';Data Source=' + dbName + '.tmp'); DeleteFile(DbName); ReNameFile(dbName + '.tmp', DbName);end;procedure Tfrmper.mnucdataClick(Sender: TObject);var dbname: string;begin if dmper.acper.Connected = true then dmper.acper.Connected := false; Sleep(500); dbname := ExtractFilePath(Application.ExeName) + 'permis.mdb'; CompactAccess(dbname); MessageBox(handle, '数据库压缩成功!', '提示', mb_IconInformation + mb_Ok); if dmper.acper.Connected = false then dmper.acper.Connected := true;end; 你们的方法都是不行,因为TADOconnection正在连着数据库,你们的方法会提示数据库被XX用户正在使用,等数据库能使用时再重试现在 就是不能断开TADOconnection连接,而又能够压缩数据库 Delphi5 dll在Delphi 2009调用出问题 delphi文本加密解密 ★★★我15岁堂弟学delphi10天左右的作品 请教:如何用Query实现数据的修改。(在线等待) 您会帮我吗?进来坐坐吧!先谢了``` 我要电子书,给我最多的给全分 。。。。 能否在同一模块中声明两个消息处理函数? ACCESS数据库表的编辑问题? 判断是左击还是右击 可以用子界类型作数组的下标吗? 找不到DesignEditors的错误! 请教关于query的问题,急死我了
------------------------------
啥子意思哦?是不是压缩数据库?
如果是可以这样var
X: OleVariant;
begin
X:= createoleobject('JRO.JetEngine');
x.CompactDatabase('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Nwind2k.mdb','Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\nwind2kdelphi.mdb')
end;
procedure CompactAccess(dbName: string; JetId: string = '4.0'); //压缩
var
AVariant: Variant;
begin
if FileExists(dbName + '.tmp') then DeleteFile(DbName + '.tmp');
AVariant := CreateOleObject('JRO.JetEngine');
AVariant.CompactDataBase('Provider=Microsoft.Jet.OLEDB.' + JetId + ';Data Source=' + dbName ,
'Provider=Microsoft.Jet.OLEDB.' + JetId + ';Data Source=' + dbName + '.tmp');
DeleteFile(DbName);
ReNameFile(dbName + '.tmp', DbName);
end;procedure Tfrmper.mnucdataClick(Sender: TObject);
var
dbname: string;
begin
if dmper.acper.Connected = true then dmper.acper.Connected := false;
Sleep(500);
dbname := ExtractFilePath(Application.ExeName) + 'permis.mdb';
CompactAccess(dbname);
MessageBox(handle, '数据库压缩成功!', '提示', mb_IconInformation + mb_Ok);
if dmper.acper.Connected = false then dmper.acper.Connected := true;
end;
现在 就是不能断开TADOconnection连接,而又能够压缩数据库