2014-06-09 16 views
10

Ich habe die H2-Konsole von http://www.h2database.com/html/download.html
heruntergeladen und ich habe die URL in meiner jdbc.properties Datei
zu jdbc:h2:c:/data/Messaging konfiguriert.H2 Console Cant siehe Tabellen, die von JAVA erstellt

Ich verwende die gleiche URL in der Datei, um eine Verbindung zur Datenbank herzustellen, aber ich kann die Tabellen nicht sehen; Ich kann nur das Informationsschema sehen und wenn ich versuche, select * from tables darin zu sehen, kann ich weder die Tabellen sehen.

Hat jemand eine Idee, was könnte falsch sein?

+0

Bitte überprüfen Sie: http://stackoverflow.com/a/24012222/2439249 – ozeray

Antwort

8

Hatte das gleiche Problem.

Dies löste es für mich: Why is my embedded h2 program writing to a .mv.db file

Just added ;MV_STORE=FALSE und ;MVCC=FALSE auf die JDBC-URL und alles funktionierte gut.

+1

Fantastischen hinzugefügt endlich diese, so kann ich die Datei-Datenbank in fbvizualizer jdbc anzuzeigen: h2: ~/Nexin; DB_CLOSE_DELAY = - 1; MODE = MySQL; MV_STORE = FALSCH; MVCC = FALSE –

0

Sie können dieses Problem auch vermeiden, indem Sie dieselbe Version zwischen der H2-Konsole und Ihrem Java-Code verwenden.

So löste ich das gleiche Problem here.

8

Basierend auf Ihrer Frage, es sieht nicht so aus, als ob Sie Opfer dieser besonderen Falle wurden, aber dieser Thread half mir dabei, das Problem zu nageln, also nehme ich die Lösung hier für die Nachwelt auf, da es anderen helfen kann Dasselbe Problem.

Ich fand auch, dass, als ich versuchte, meine Datenbank mit der H2-Konsole zu öffnen, die ich sah, was eine leere H2-Datenbank zu sein schien (im Grunde nur eine INFORMATION_SCHEMA-Tabelle). Bei der Überprüfung, ob der Name der Datenbank korrekt ist (mydb.mv.db), habe ich festgestellt, dass die H2-Konsole eine zweite Datenbankdatei erstellt hat: mydb.mv.db.mv.db. Ungerade.

Es stellt sich heraus, dass die H2-Konsole erwartet, dass Sie das Suffix .mv.db aus dem Dateinamen weglassen. Da ich es nicht hatte, suchte es nach mydb.mv.db.mv.db. Ändern der JDBC-Zeichenfolge auf jdbc:h2:mydb löste das Problem und ich konnte dann die Datei von der H2-Konsole öffnen.

+0

danke es funktionierte :) – Krishnendu

+0

Liebe mich, müssen Sie das Suffix weglassen? Dies löste es schließlich für mich nach vier Tagen der Qual über das Problem. Vielen Dank! – flith

1

Ich habe das unten verwendet und ich sehe meine Tabelle erstellt werden.


spring.datasource.url=jdbc:h2:mem:testdb;DB_CLOSE_ON_EXIT=FALSE 
spring.h2.console.enabled=true 
spring.h2.console.path=/h2console 
spring.datasource.username=sa 
spring.datasource.password= 
spring.datasource.driverClassName=org.h2.Driver 
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.H2Dialect