Как указывало сингулярность, APSW предоставляет встроенную в SQLite функциональность резервного копирования.
Причина, по которой вы не можете продолжать использовать курсоры (на практике базовые скомпилированные операторы SQLite), заключается в том, что схема базы данных потенциально завершенаизменилось, поскольку вы перезаписали его резервной копией.Вы можете использовать методы close для принудительного закрытия элементов.
По некоторым причинам многие разработчики, похоже, считают курсоры ценным товаром и пытаются использовать их повторно и держать их при каждом удобном случае.Сами курсоры очень легкие, чуть более «тяжелые», чем целые числа Python.Базовые скомпилированные операторы SQLite являются более тяжелыми, но на уровне объектов Python они переключаются для каждого выполняемого оператора.(т. е. курсор APSW указывает на выполняемый в настоящий момент скомпилированный оператор SQLite.)
КСТАТИ APSW также включает возможность выгрузки базы данных.Вы можете использовать класс оболочки, чтобы выполнить работу за вас.
http://apidoc.apsw.googlecode.com/hg/shell.html#shell-class
Раскрытие информации: я являюсь автором APSW.