Создание резервной копии базы данных Microsoft Access в c#.Net приложение для Windows


Я разрабатываю одно приложение C# .NET.

Я использую базу данных Microsoft Access (OLEDB).

Я хочу выполнять резервное копирование базы данных время от времени (программно).

(или как я могу создать .файл bak в sqlserver2008 r2)

Что мне делать?

1 2

1 ответ:

База данных Access обычно представляет собой один файл.
Для выполнения программного резервного копирования вы можете просто использовать

File.Copy(sourceDbName, destDbName, true);

Конечно, вы можете добавить простую процедуру, которая берет вашу входную базу данных, zip и сохраняет ее в вашем каталоге резервного копирования, при необходимости передавая пароль, например:

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();
    }
}

Для этого фрагмента кода требуется библиотека DotNetZip