Olá a todos.
Pessoal, estou tendo problemas com a criação de um banco de dados em JDBC utilizando o h2 database.
Por exemplo, consigo criar um Banco de Dados usando MySQL através de minha aplicação, como segue:
Na minha classe getConnection tento realizar a conexão da forma convencional:
try{
Connection conexao = DriverManager.getConnection(url1, usuario, senha);}
onde > url1 = “jdbc:mysql://localhost:3306//meuBD”;
Caso o Banco de Dados não exista tento o seguinte:
catch{
try{Connection conexao = DriverManager.getConnection(url2 + "user=" + usuario + "&" + "password=" + senha);` Statement stmt = conexao.createStatement(); stmt.executeUpdate("CREATE DATABASE IF NOT EXISTS meuBD"); }}
onde > url2 = “jdbc:mysql://localhost:3306?”;
Porém, tentando fazer o mesmo com h2 não consigo o mesmo resultado.
Tive problemas na primeira parte em que se tenta acessar o BD, pois por padrão é criado um novo banco de dados vazio quando a base de dados especificada na URL do h2 não existe. Mas já resolvi passando a url da seguinte forma:
url1 = “jdbc:h2:/~/meuBD;IFEXISTS=TRUE”;
O problema é na segunda parte, quando tento criar o BD:
catch{
try{ Connection conexao = DriverManager.getConnection(url2 + "user=" + usuario + "&" + "password=" + senha); Statement stmt = conexao.createStatement(); stmt.executeUpdate("CREATE SCHEMA IF NOT EXISTS meuBD");} }
Tentei passar a url2 como > “jdbc:h2:/~/?”, semelhante ao código do MySQL, mas não deu certo.
Como posso criar o BD direto no software usando o h2?
Desde já agradeço a quem puder ajudar.


