2009-07-02 5 views
4

Ich verwende eine SQLite-Datenbank von Python (mit SQLAlchemy). Aus Leistungsgründen möchte ich eine In-Memory-Datenbank in der Anwendung auffüllen und dann diese Datenbank auf der Festplatte sichern.Verwenden Sie SQLite Backup-API von Python/SQLAlchemy

SQLite hat eine backup API, die scheint dies transparent zu tun.

Die APSW Dokumentation sagt, dass es wraps the backup API, aber ich würde diese Funktionalität von Standard-sqlite3 Moduls Python zugreifen möchten, oder im besten Fall von SQLAlchemy. Ist das möglich?

Antwort

1

Wenn ich die folgende

import sqlite3 
dir(sqlite3) 

sehe ich keine der backup API Methoden.

Daher ist die Antwort nein; Sie können vom sqlite3-Modul nicht auf die API zugreifen. Es scheint, dass niemand es implementiert hat.

3

der APSW-Dialekt kann ziemlich einfach zu SQLAlchemy hinzugefügt werden. In 0.6 wäre dies sehr einfach zu erreichen, was es mehreren Arten von DBAPI-Adaptern ermöglicht, einen gemeinsamen Dialekt für die verwendete Datenbank zu verwenden.

+0

Das klingt sehr vielversprechend, danke! Kannst du irgendeinen Ort empfehlen, um dies zu erforschen? –

3

Wenn Pysqlite und Apsw mit der gleichen SQLite-Bibliothek verknüpft sind, kann Pysqlite Apsw Verbindungen akzeptieren. Siehe:

http://docs.pysqlite.googlecode.com/hg/sqlite3.html#combining-apsw-and-pysqlite

Ich werde versuchen, Arbeit zu tun auf diese (und andere) zu bekommen apsw Ansätze mit SQLAlchemy zu arbeiten, wie sie eine sehr nützliche Kombination sind.

+0

Ich konnte solche Apsw offene Verbindung mit Python sqlite3 in sqlalchemy verwenden. – iny

Verwandte Themen