Java 在语句中找不到表
我得到的只是Java 在语句中找不到表,java,database,eclipse,odb,Java,Database,Eclipse,Odb,我得到的只是 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 = " + bas
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);
我的数据库名为pokemonden
,我的表名为PKMN
,我的表也在程序中继承
那么我做错了什么?我不明白。我认为您需要在JDBC URL中提供数据库文件的完整路径:
DriverManager.getConnection(“jdbc:hsqldb:file:c:\mydir\pokemonden”、“sa”和“)代码>请尝试以下操作
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)
这将防止表定义丢失检查您的表是否确实存在:java.sql.SQLException:没有可用数据
这意味着我的数据库不在我希望的位置,不是吗?您在哪里创建表PKMN?它已经存在,内置OpenOffice Base,然后添加到程序中我试图避免的内容:(我希望DB top的位置灵活(程序所在的位置),但我会尝试让它运行anyways@Ekonion您应该能够从运行程序的位置获取当前路径,如下所示:Paths.get(“.”)。toAbsolutionPath().normalize().toString()
然后您可以使用此字符串创建数据库文件的绝对路径。java.sql.SQLException:没有可用的数据
conn = DriverManager.getConnection("jdbc:hsqldb:file:Pokemondaten;shutdown=true","sa","")