Подтвердить что ты не робот

Резервное копирование базы данных SQLite в .NET.

Как получить резервную копию базы данных SQLite в памяти? Я создаю базу данных в своем приложении Windows. Я хочу взять резервную копию базы данных, когда я закрою приложение.

4b9b3361

Ответ 1

Вы хотите SQLite Online Backup API.

Насколько мне известно, System.Data.SQLite еще не поддерживает его, поэтому вам нужно будет написать код. Форум System.Data.SQLite содержит пример: http://sqlite.phxsoftware.com/forums/t/2403.aspx. Как уже отмечалось, когда вы исправляете System.Data.SQLite и вызываете SQLite напрямую, вы делаете это на свой страх и риск.

Ответ 2

как заменить "базу данных в памяти" на "файловую базу данных"?

Если вы закроете приложение, файл все равно будет там.

При запуске программы вы должны сделать так, чтобы файл базы данных был удален.

Ответ 3

вы можете попробовать этот код

using (var location = new SQLiteConnection(@"Data Source=activeDb.db; Version=3;"))
using (var destination = new SQLiteConnection(@"Data Source=backupDb.db; Version=3;"))
{
     location.Open();
     destination.Open();
     location.BackupDatabase(destination, "main", "main", -1, null, 0);
}