Frage

Ich habe während der Einrichtung von Slick 2.0.2 einige Probleme erlebt.Jede Konfiguration, die ich in einer Sitzung tue, ist in der nächsten verloren.Beispielsweise erstelle ich in der ersten Sitzung den Tisch und füge drei Personen hinzu:

generasacodicetagpre.

alles ist gut bis zu diesem Punkt.Die Ausgabe wiederholt die drei Personen, die ich hinzugefügt habe.Wenn ich eine neue Sitzung starte, fange ich an, Probleme zu erleben.

generasacodicetagpre.

Der obige Block erzeugt eine generationspflichtige Ausnahme von org.h2.jdbc.JdbcSQLException: Table "CONTACTS" not found.Wenn ich wie folgt bearbeite

generasacodicetagpre.

dann werden alle Daten gelöscht.

Ich sehe, dass der Scalatra-Anleitung zum Slick eine ähnliche Konfiguration verwendetzu meinen.Was mache ich falsch?Wie sollte ich die Daten bekommen, um zwischen den Sitzungen zu bleiben?Hat die Tatsache, dass ich eine In-Memory-Datenbank verwende, etwas damit zu tun?

War es hilfreich?

Lösung

zwei Möglichkeiten.

Erstellen Sie entweder eine Sitzung und halten Sie sie offen.Das kann mit einem mit einem Withsession-Umfang erfolgen, der auf dem Anrufstapel oder db.kreatessive niedriger ist.

oder fügen Sie der Datenbank-URL ;DB_CLOSE_DELAY=-1 hinzu.Das hält den db lebendig, solange der VM läuft.

siehe http://www.h2database.com/html/features.html#in_memory_database

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