01.02.2009, 08:13 Uhr

SQLite-Datenbank einrichten und füllen

Sie wollen eine SQLite-Datenbank einrichten und mit Daten füllen. Die Tabellendefinitionen und Daten liegen als SQL-Textdateien (Dumps) vor.
Sie wollen eine SQLite-Datenbank einrichten und mit Daten füllen. Die Tabellendefinitionen und Daten liegen als SQL-Textdateien (Dumps) vor.
Verwenden Sie sqlite_open(), um die Datenbank anzulegen, und sqlite_exec() in Verbindung mit file_get_contents(), um die Tabellen anzulegen und die Datenbank mit Daten zu füllen:
if (! $sqlite = sqlite_open("test.db", 0666))
{
die("Kann Datenbank nicht erstellen");
}
if (sqlite_exec($sqlite, file_get_contents("sqlite_table_def.sql")))
{
echo "Datenbanktabellen erstellt\n"; }
if (sqlite_exec($sqlite, file_get_contents( "sqlite_table_data.sql"))) 
{
echo "Datenbank eingerichtet\n";
}
Bei SQLite steht Ihnen kein mitgelieferter Client zur Verfügung. Hier schafft das gezeigte einfache PHP-Skript Abhilfe. Zunächst öffnen Sie mit sqlite_open() eine Datenbankdatei namens test.db. Diese Funktion nimmt als ersten Parameter den Dateinamen der Datenbank auf. Ist die Datei bereits vorhanden, wird die Datenbank geöffnet, wenn nicht, wird sie angelegt und dann geöffnet. Der zweite Parameter ist eine Oktalzahl, die die Permissions für die Datei angibt – in diesem Fall das Lesen und Schreiben für alle Benutzer. Damit können Sie Einträge in die Datenbank vornehmen.
Bei SQLite können Sie mit den Funktionen sqlite_exec() und sqlite_query() auch mehrfache durch Semikola getrennte SQL-Statements ausführen. In diesem Fall liegen die CREATE TABLE-Statements in der Datei sqlite_table_ def.sql vor und die INSERT-Statements in sqlite_table_ data.sql. Wir lesen die Dateien mit file_get_contents() zuerst komplett in einen String ein, den wir dann an sqlite_exec() übergeben.



Das könnte Sie auch interessieren