try{
String query= "select user_name from user";
ResultSet rs = queries.performQuery(query);
while(rs.next()){
System.out.println("User Name :" + rs.getString("user_name"));
}
另一類
我有這樣的事情:調用另一種方法獲取結果集並正確關閉連接?
public ResultSet performQuery(String query) throws SQLException
{
try
{
connection = DriverManager.getConnection(sqlUrl,sqlUser,sqlPassword);
stmt = connection.createStatement();
rs = stmt.executeQuery(query);
}
catch(SQLException ex)
{
}
finally{
close(rs);
close(stmt);
close(connection);
}
return rs;
}
現在我得到的錯誤不允許操作的ResultSet關閉後,這是明顯的,因爲我關閉RS /語句/連接。
我沒有我的代碼,所以這只是我的頭頂,忽略任何語法錯誤,我希望我的問題仍然清楚。
所以我的問題是這樣的:
如果你想有一個例如執行查詢的方法,並調用在另一種方法,然後做rs.next,什麼是適當的方式來關閉ResultSet /語句/連接?對我來說關閉performQuery是有意義的,但是這給了我錯誤。
那麼,你執行一個查詢並關閉ResultSet,但實際上*檢索結果行需要一個打開的ResultSet。因此,您唯一的選擇是在執行查詢後保持「ResultSet」處於打開狀態,以便檢索結果...之後,關閉它。創建1個方法可能會更好,這兩個方法都會執行查詢並檢索結果(如果這就是您之後的結果)。 – Torious 2012-04-15 18:54:41