在c#.Net Windows App中恢复Microsoft Access数据库

Fre*_*cer 2 c# sql database oledb ms-access

我正在开发一个c#.NET应用程序.

我正在使用Microsoft Access(OLEDB)的数据库.

我希望不时地备份数据库(以编程方式).

(或者我可以在sqlserver2008 r2中创建.bak文件)

我该怎么办?

Ste*_*eve 5

Access数据库通常是单个文件.
要进行编程备份,您只需使用

File.Copy(sourceDbName, destDbName, true);
Run Code Online (Sandbox Code Playgroud)

当然,您可以添加一个简单的例程,将您的输入数据库,压缩并存储在备份目录中,可选地传递密码,如下所示:

using Ionic.Zip;
......

private void BackupToZip(string sourceDBName, string destZipFile, string password)
{
    using (ZipFile zip = new ZipFile(destZipFile))
    {
        if (bkpPass.Length > 0) zip.Password = password;
        ZipEntry e = zip.UpdateFile(sourceDbName, string.Empty);
        e.Comment = "Working copy stored in date: " + DateTime.Today.ToShortDateString();
        zip.Comment = "This zip archive has been created by ......";
        zip.Save();
    }
}
Run Code Online (Sandbox Code Playgroud)

这段代码需要DotNetZip库