2016-08-28 6 views
-3
Class.forName("org.hsqldb.jdbcDriver"); 
    conn = DriverManager.getConnection("jdbc:hsqldb:file:Pokemondaten","sa",""); 
    getData = conn.createStatement(); 
    ResultSet rs = getData.executeQuery 
    ("SELECT HP FROM PKMN WHERE ID = " + basicnumber); 
    int hpp = rs.getInt(1); 
    System.out.println(hpp); 

все, что я получаюТаблица не найдена в заявлении

java.sql.SQLException: Table not found in statement [SELECT HP FROM PKMN] 
    at org.hsqldb.jdbc.Util.sqlException(Unknown Source) 
    at org.hsqldb.jdbc.jdbcStatement.fetchResult(Unknown Source) 
    at org.hsqldb.jdbc.jdbcStatement.executeQuery(Unknown Source) 
    at pokeWpRechner.Main.main(Main.java:46) 

Мои Databased называется Pokemondaten и моя таблица называется PKMN, и моя таблица наследуется в программе.

Так что же я сделал не так? Я не понимаю.

+1

Проверьте, действительно ли ваша таблица: [Как увидеть все таблицы в базе данных HSQLDB?] (Http://stackoverflow.com/q/591518) – Tom

+0

'java.sql.SQLException: данных нет 'это означает, что моя база данных не там, где я хочу, чтобы она была, не так ли? – Ekonion

+0

где вы создаете свой стол PKMN? –

ответ

0

Я думаю, вы должны указать полный путь к файлу базы данных в URL JDBC:

DriverManager.getConnection("jdbc:hsqldb:file:c:\mydir\Pokemondaten","sa","");

+0

, что и я пытался избежать :(я хочу, чтобы расположение верхней части БД было гибким (где есть программа), но я постараюсь, чтобы он работал в любом случае – Ekonion

+1

@Ekonion вы должны иметь возможность получить текущий путь от того, где ваша программа работает следующим образом: 'Paths.get (". "). ToAbsolutePath(). Normalize(). ToString()', а затем вы можете использовать эту строку для создайте абсолютный путь к вашему файлу базы данных. – rohitvats

+0

'java.sql.SQLException: данных нет 'все еще – Ekonion

1

Try следующие

conn = DriverManager.getConnection("jdbc:hsqldb:file:Pokemondaten;shutdown=true","sa","") 

Это должно предотвратить определение таблицы, чтобы быть потерянным

Смежные вопросы