Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Why are added tables from Java not visible when I open the H2 console?

Tags:

database

h2

I use an H2 embedded database in Java, and after creating the database and adding some tables and data, it gets saved as a file in a directorey of my computer.

But whenever I open this file with the H2 Console, it shows no tables at all? Why are the tables not there?

I am using this URL in my java code: jdbc:h2:file://C:/Temp/H2/ourDB

And I log into the console with the following information:

console

After logging in, I can't see the tables that were created in Java?

like image 746
n00b1990 Avatar asked Dec 02 '22 19:12

n00b1990


2 Answers

You have used a different database URL in the H2 Console (not jdbc:h2:file://C:/Temp/H2/ourDB). You need to use the same one, otherwise it's a different database.

like image 100
Thomas Mueller Avatar answered Apr 08 '23 04:04

Thomas Mueller


The accepted ans is correct- it's URL issue. But for recent user, I am posting the updated values (I am using SpringBoot 2 with Spring Data JPA). When you open H2 Console, the default URL shown for DB Connection is: jdbc:h2:~/test . If you connect using this URL, you won't find the tables you created in your app. But user generated tables to be seen use URL as jdbc:h2:mem:testdb. Pls, refer below figures:

enter image description here

enter image description here

Here EXCHANGE_VALUE was my JPA generated table, that i could see after connecting to db using URL as jdbc:h2:mem:testdb.

like image 26
Dexter Avatar answered Apr 08 '23 04:04

Dexter