Heim > Java > javaLernprogramm > Hauptteil

Warum tritt bei der H2-In-Memory-Datenbank der Fehler „Tabelle nicht gefunden' auf und wie kann man ihn beheben?

Patricia Arquette
Freigeben: 2024-10-26 03:21:03
Original
880 Leute haben es durchsucht

 Why does

H2-In-Memory-Datenbank: Beheben des Fehlers „Tabelle nicht gefunden“

Bei Verwendung einer H2-In-Memory-Datenbank mit der URL „jdbc:h2:mem:test“: Benutzer können beim Versuch, Daten aus einer zuvor erstellten Tabelle auszuwählen, auf die Fehlermeldung „Tabelle ‚PERSON‘ nicht gefunden“ stoßen. Dieser Fehler tritt auf, weil H2 standardmäßig die Datenbankverbindung nach der Tabellenerstellung mithilfe der hbm2ddl-Funktion von Hypernate schließt.

Um dieses Problem zu beheben und den Datenbankinhalt beizubehalten, ändern Sie die Verbindungs-URL in das folgende Format:

<code class="text">jdbc:h2:mem:test;DB_CLOSE_DELAY=-1</code>
Nach dem Login kopieren

Dieser Parameter weist H2 an, die In-Memory-Datenbank geöffnet zu halten, solange die Java Virtual Machine (JVM) läuft. Durch das Hinzufügen eines Semikolons (;) anstelle eines Doppelpunkts (:) zwischen der URL und dem Parameter können Sie zusätzliche Parameter angeben.

In der Dokumentation heißt es: „Das Schließen der letzten Verbindung zu einer Datenbank schließt die Datenbank.“ Bei einer In-Memory-Datenbank bedeutet dies, dass der Inhalt verloren geht.“ Durch Festlegen des Parameters DB_CLOSE_DELAY=-1 stellen Sie sicher, dass die Datenbank geöffnet bleibt, bis die JVM beendet wird, und die Daten auch nach dem Schließen der Verbindung erhalten bleiben.

Das obige ist der detaillierte Inhalt vonWarum tritt bei der H2-In-Memory-Datenbank der Fehler „Tabelle nicht gefunden' auf und wie kann man ihn beheben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!