【发布时间】:2016-07-13 17:16:28
【问题描述】:
我正在创建一个 JavaFX 应用程序,我已经很好地连接到了数据库。但是,当我从表中获取数据时,我得到了错误
org.h2.jdbc.JdbcSQLException:找不到表“LECTURE”; SQL 声明:从讲座中选择名称 [42102-192]
而且我 100% 确定我已连接到数据库并且表肯定存在,关于为什么会这样的任何建议?
听到的是我的连接代码和我正在运行的代码,以便您可以看到
public class ConnectionFactory {
//static reference to itself
private static ConnectionFactory instance = new ConnectionFactory();
public static final String URL = "jdbc:h2:file:~/db\\.";
public static final String USER = "notepad";
public static final String PASSWORD = "password";
public static final String DRIVER_CLASS = "org.h2.Driver";
//private constructor
private ConnectionFactory() {
try {
Class.forName(DRIVER_CLASS);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
}
private Connection createConnection() {
Connection connection = null;
try {
connection = DriverManager.getConnection(URL, USER, PASSWORD);
} catch (SQLException e) {
System.out.println("ERROR: Unable to Connect to Database.");
}
return connection;
}
public static Connection getConnection() {
return instance.createConnection();
}
}
查询正在运行
private void onLoadYearSelect() {
try {
Connection con = ConnectionFactory.getConnection();
Statement stat = con.createStatement();
String query = "SELECT NAME FROM Lecture";
ResultSet years = stat.executeQuery(query);
while(years.next()){
yearSelect.setValue(years.getString("NAME"));
System.out.println(years.getString("NAME"));
}
} catch (SQLException e) {
e.printStackTrace();
}
}
public void initialize(){
onLoadYearSelect();
}
【问题讨论】: