• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

用程序实现压缩access(*.mdb)数据库的方法

mysql 搞代码 4年前 (2022-01-09) 26次浏览 已收录 0个评论

下面的函数用来 压缩 access 数据库 需要增加ComObj单元 function CompactDatabase(AFileName,APassWord:string):boolean; // 压缩 与修复 数据库 ,覆盖源文件 const SConnectionString = ‘PRovider=Microsoft.Jet.OLEDB.4.0;Data Source=%s;’ +’Jet OLEDB:D

下面的函数用来压缩access数据库 需要增加ComObj单元
function CompactDataba来1源gaodai#ma#com搞*代#码1网se(AFileName,APassWord:string):boolean;
//压缩与修复数据库,覆盖源文件
const
SConnectionString = ‘PRovider=Microsoft.Jet.OLEDB.4.0;Data Source=%s;’
   +’Jet OLEDB:Database Password=%s;’;
var
SPath,SFile:Array [0..254] Of Char;
STempFileName:String;
JE:OleVariant;
begin
GetTempPath(40,SPath);//取得Windows的Temp路径
GetTempFileName(SPath,’~CP’,0,SFile);//取得Temp文件名,Windows将自动建立0字节文件
STempFileName:=SFile;//PChar->String
DeleteFile(STempFileName);//删除Windows建立的0字节文件
try
  JE:=CreateOleObject(‘JRO.JetEngine’);//建立OLE对象,函数结束OLE对象超过作用域自动释放
  OleCheck(JE.CompactDatabase(format(SConnectionString,[AFileName,APassWord]),
    format(SConnectionString,[STempFileName,APassWord])));//压缩数据库
  //复制并覆盖源数据库文件,如果复制失败则函数返回假,压缩成功但没有达到函数的功能
  result:=CopyFile(PChar(STempFileName),PChar(AFileName),false);
  DeleteFile(STempFileName);//删除临时文件
except
  result:=false;//压缩失败
end;
end;


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:用程序实现压缩access(*.mdb)数据库的方法
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址