Auf diesem schönen Blog steht, dass ich in dbconsole in der Lage sein sollte, kleine Symbole auf der linken Seite für meine Tabellen zu sehen, wie er "BOOK" sieht. Ссылка
Ich verwende STS und grails 2.0, und ich mache eine Anwendung mit mehreren Domänenklassen (ich kann zu den Controllern gehen und Listen und Sachen sehen), aber die dbconsole zeigt keine Domänenklassen an. Geht einfach direkt in INFORMATION_SCHEMA
.
Wo sind meine Domain-Klassen? Ich kann Listen sehen und .findBy und stuff !!
verwendenDanke, Mikey! Ich hatte das gleiche Problem! In der Tat, schau in
%Vor% Zumindest in meinem Fall kann JDBC URL auf jdbc: h2: mem: devDb für die Entwicklungsdatenbank, jdbc:h2:mem:testDb
für die Testdatenbank und jdbc:h2:mem:prodDb
für die Produktionsdatenbank gesetzt werden.
Die Konsole hat keine Möglichkeit zu wissen, welche Sie bevorzugen, also wird standardmäßig getestet. Wenn Sie im bbconsole-Modus im Browser auf "JDBC URL" klicken, werden einige Tipps angezeigt. Insbesondere wird erklärt, dass "die URL jdbc: h2: ~ / test bedeutet, dass die Datenbank im Ausgangsverzeichnis des Benutzers in Dateien gespeichert wird, die mit" test "beginnen." In meinem Home-Verzeichnis habe ich jetzt test.h2.db
, test.lock.db
und test.trace.db
. Es erklärt auch, warum die Daten standardmäßig nicht beibehalten werden. Ist Ihnen nicht aufgefallen, dass Sie jedes Mal, wenn Sie Grails neu starten, bei der Standardkonfiguration alle Objekte neu erstellen müssen? Nun, das liegt an dem Teil ": mem:" in der JDBC URL.
Dieser Standard hat wahrscheinlich nichts mit Grails zu tun; Ich würde vermuten, dass H2 einfach eine Testdatenbank in Ihrem Home-Verzeichnis erstellt, sofern nicht anders angegeben. Ich würde mir auch vorstellen, dass Sie in einer komplizierten Produktionsumgebung viele verschiedene Datenbanken haben können, und deshalb versucht Grails nicht zu erraten, was Sie wollen.
Siehe auch die offizielle H2-Dokumentation