ACCESS数据库恢复问题

ACCESS数据库恢复问题,第1张

参考:

《如何恢复已经删除的记录;如何恢复已经删除的表、窗体等等对象》-- access911net 文章

>

拷贝一个压缩access数据库的方法给你。压缩以后再用楼上的拷贝大法,呵呵

function CompactDatabase(AFileName,APassWord:string):boolean;

//压缩与修复数据库,覆盖源文件

const

SConnectionString = 'Provider=MicrosoftJetOLEDB40;Data Source=%s;'

+'Jet OLEDB:Database Password=%s;';

var

SPath,SFile:Array [0254] 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('JROJetEngine');//建立OLE对象,函数结束OLE对象超过作用域自动释放

// JEclosedatabase(SConnectionString);

OleCheck(JECompactDatabase(format(SConnectionString,[AFileName,APassWord]),

format(SConnectionString,[STempFileName,APassWord])));//压缩数据库

//复制并覆盖源数据库文件,如果复制失败则函数返回假,压缩成功但没有达到函数的功能

result:=CopyFile(PChar(STempFileName),PChar(AFileName),false);

DeleteFile(STempFileName);//删除临时文件

// JEopendatabase(SConnectionString);

except

result:=false;//压缩失败

end;

end;

楼主节哀。从软件角度上讲是没有备份的话access是不能数据恢复的但是从硬件上讲如果是在电脑硬盘里存在过的话,可以做硬盘的数据恢复。这个就看有没有必要了。做这个行业,楼主以后行事小心谨慎额。

以上就是关于ACCESS数据库恢复问题全部的内容,包括:ACCESS数据库恢复问题、vb怎么备份和恢复Access数据库,最好说清楚一点,我用vs做的项目、关于delphi中access数据库的备份 还原等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9293326.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存