Frage

Sorry, wenn dies zu einfach ist.

Ich habe beschlossen, dass ich eine SQLite-Datenbank anstelle einer MySQL-Datenbank verwenden möchten. Ich versuche, meinen Kopf herum zu wickeln, wie einfach SQLite ist und möchte eine einfache, eine Antwort Tutorial, wie SQLite mit dem Zend Framework zu verwenden, wo meine SQLite-Datenbank in meiner Verzeichnisstruktur setzen, wie die Datenbank zu erstellen, usw. .

War es hilfreich?

Lösung

Wenn Sie eine Verbindung zu einer nicht vorhandenen Datenbank zu machen, wird eine Datenbank im laufenden Betrieb erstellt. (Sie können diese behavour ausschalten)

Andere Tipps

@tuinstoel ist richtig, das Anbringen auf eine SQLite-Datenbank erstellt es implizit, wenn es nicht existiert.

SQLite unterstützt auch einen Kommandozeilen-Client, der mehr oder weniger wie MySQL Kommando-Shell ist, so dass Sie Ad-hoc-Befehle oder SQL-Skripte ausführen erteilen. Siehe Dokumentation hier: http://www.sqlite.org/sqlite.html

Natürlich müssen Sie die Zend_Db Adapter in Ihrer ZF-Anwendung ändern. ZF unterstützt nur einen Adapter an die PDO SQLite-Erweiterung. SQLite nicht Benutzer / Passwort-Anmeldeinformationen unterstützen. Auch da SQLite eine eingebettete Datenbank anstelle von Client / Server ist, der "host" Parameter ist ohne Bedeutung.

$db = Zend_Db::factory("pdo_sqlite", array("dbname"=>"/path/to/mydatabase.db"));

Eine weitere Einschränkung: Wenn Sie Abfrageergebnisse in assoziativen-Array-Format erhalten, einige Versionen von SQLite bestehen auf mit „tabellenname.spaltenname“ als Schlüssel im Array, während andere Marken von Datenbank Rückkehr Schlüsseln einfach als „column“. Es ist ein herausragendes Problem bei ZF darüber, um zu versuchen, zu kompensieren und SQLite im Einklang mit den anderen Adaptern machen verhalten, aber der Fehler ist ungelöst.

Dies ist jetzt bedeckt in der Zend Framework quickstart Tutorial (Version 1.9.5 zum Zeitpunkt des Schreibens). So stellen Sie ein neues Projekt (mit zf Kommandozeilen-Tool. hier für ein großes Tutorial auf ihre Einrichtung), fügen Sie diese Zeilen zu Ihrer config.ini Datei und Sie sind gut zu gehen:

; application/configs/application.ini
[production]
resources.db.adapter       = "PDO_SQLITE"
resources.db.params.dbname = APPLICATION_PATH "/../data/db/databaseName.db"

Wenn Sie sich jetzt für den Standard-Datenbankadapter fragen, werden sie diese benutzen. Ich würde auch empfehlen die Quickstart Tutorial Quellcode herunterzuladen und die Verwendung des load.sqlite.php Skript zu machen. Sie können ein Schema und die Daten-Datei erstellen und die Datenbank mit diesen Tabellen / Spalten / Werte laden. Es ist sehr hilfreich! Überprüfen Sie einfach heraus Tutorial . Es ist alles drin.


Diese Antwort wurde aus der Frage in eine CW Antwort bewegt Besitz über den Inhalt desavouieren .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top