C'è un file h2 database nella mia directory src (Java, Eclipse): h2test.dbh2 (modalità embedded) del database file di problema
Il problema:
iniziare il h2.jar dalla riga di comando (e quindi dall'interfaccia del browser h2 sulla porta 8082), ho creato 2 tabelle, 'test1' e 'test2' in h2test.db e ho inserito alcuni dati in esse;
quando si tenta di accedervi dal codice java (JDBC), mi lancia "tabella non trovata eccezione". Una "mostra tabelle" dal codice java mostra un set di risultati con 0 righe.
Inoltre, quando si crea una nuova tabella ('newtest') dal codice java (CREATE TABLE ... ecc.), Non riesco a vederlo quando si avvia successivamente l'interfaccia del browser h2.jar; solo le altre due tabelle ('test1' e 'test2') sono mostrate (ma poi la tabella appena creata 'newtest' è accessibile dal codice java).
Sono inesperto con database incorporati; Credo che sto facendo qualcosa di fondamentalmente sbagliato qui. La mia ipotesi è che acceda allo stesso file, una volta dall'app java e una volta dall'interfaccia h2 console-browser. Non riesco a capirlo, cosa sto sbagliando qui?
EDIT: come richiesto, l'aggiunta di un po 'di codice:
codice Java:
Class.forName("org.h2.Driver");
String url = "jdbc:h2:" + "db/h2test.db";
String user = "aeter";
String password = "aeter";
Connection conn = DriverManager.getConnection(url, user, password);
PreparedStatement ps2 = conn.prepareStatement("Show tables;");
ResultSet rs = ps2.executeQuery();
Questo gruppo di risultati ha 0 righe (senza tabelle), invece di mostrarmi i 2 tavoli.
H2 impostazioni di interfaccia della console browser:
Settings: Generic h2(embedded) driver class: org.h2.Driver JDBC URL: jdbc:h2:../../workspace/project_name/src/db/h2test.db user name: aeter password: aeter
Edit2: ho copiato il database in una nuova cartella. Ora il file db nella nuova cartella viene mostrato con la tabella 'newtest' (dal codice java) e con le tabelle 'test1' e 'test2' (dall'interfaccia h2 della console-browser) - esattamente allo stesso modo del vecchio db il file è stato mostrato. Quindi il problema persiste con la copia del file db.
@Lubos: il collegamento è morto – Chris
@Lubos: il risultato è "301 Spostati permanentemente". – trashgod