PDO: Kann nicht SQLite-Datenbank im Speicher erstellen
-
19-09-2019 - |
Frage
Der Versuch, ein wenig über PDO zu lernen und wird durch dieses Tutorial . Es hat den folgenden Code-Snippet:
<?php
try
{
$db = new PDO('sqlite::memory');
echo "SQLite created in memory.";
}
catch(PDOException $e)
{
echo $e->getMessage();
}
Wenn ich laufen diese erhalte ich die folgende Ausnahmemeldung:
SQLSTATE [HY000] [14] derzeit keine Datenbank-Datei öffnen
Was bedeutet das? Wie kann ich es zur Arbeit? Ich bin in der Lage zu einer MySQL-Datenbank zu verbinden und auch eine regelmäßige SQLite-Datenbank-Datei. So weiß ich wenigstens etwas funktioniert ...
Ich bin auf Windows 7 64-Bit mit Apache 2.2.11 und PHP 5.3.0 (letzten WampServer installieren). phpinfo()
berichtet, dass ich pdo_sqlite mit SQLite-Bibliothek 3.6.15 freigegeben.
Lösung
Sie haben schreiben
$db = new PDO('sqlite::memory:');
die hintere :
fehlt.
Die PDO_SQLITE Data Source Name (DSN) setzt sich aus folgenden Elementen zusammen:
Der DSN-Präfix ist SQLite.
Um eine Datenbank auf der Festplatte zuzugreifen, den absoluten Pfad zu der DSN-Präfix anhängen.
Um eine Datenbank im Speicher zu erstellen, fügen Sie : memory:. , um den DSN-Präfix
Andere Tipps
Nicht sicher @ win Berechtigungen, aber auf * nix, schreiben SQLite Bedürfnisse Erlaubnis zum Verzeichnis beschränken Datenbankdateien für temporäre Dateien.