我正在尝试调试为什么我的数据库连接似乎无法从数据库中获取任何行。我能够毫无问题地连接到数据库(postgres),并且在执行查询时不会出现任何异常,但是由于某些原因,它们总是返回空的ResultSet。
byte[] decodedstrDbPassword = Base64.getDecoder().decode(strDbPassword);
String dbpwd = new String(decodedstrDbPassword, "utf-8");
Class.forName("org.postgresql.Driver");
static Connection dbConnection = DriverManager.getConnection(strDbUrl, strDbUser, dbpwd);
ResultSet rs = connection.createStatement().executeQuery("SELECT * FROM my_table;");
if (rs.next()) {
System.out.println("Got a row");
}
我从ResultSet对象中获取了originalQuery
,并针对我的数据库独立执行了该操作,它返回了一堆行,并且一目了然,ResultSet中的fields
字段已从my_table
中获取了所有正确的列类型]。当我尝试使用rs.next()
来获取它们时,似乎没有任何行。
我在这里可能丢失的任何东西都可能在获取行时给我带来麻烦?预先感谢您的任何提示/建议。
可能最后是Semikolon。可能会被忽略以避免SQL注入。尝试不带;最后