2016-04-26 46 views
0

我使用的是Apache derby,在這裏得到上面的錯誤是我的代碼,實際上我只是沒有得到所有的父母下的孩子,它只給我一個級別的孩子,所以請告訴我如何使樹父母和孩子,但在最後的讀數RS1ResultSet未打開。操作'getString'不允許。驗證自動提交是否關閉。

Statement stmt; 


     stmt = MainUI.getConnection().createStatement(); 
+0

接受,因爲部分你說一個連接打開1條語句我試圖接取與其他發言 –

回答

2

嵌套結果集此只給出一個與上述錯誤

越來越連接

public static Connection getConnection(){ 

    Connection connection = null; 

    try { 
     Class.forName("org.apache.derby.jdbc.ClientDriver").newInstance();// 
     //Get a connection 
     connection = DriverManager.getConnection(dbURL); 
     connection.setAutoCommit(false); 
     connection.getAutoCommit(); 
    } catch (Exception except) { 
     System.out.println(except); 
    } 
    return connection; 
} 

和錯誤在第二循環的孩子的水平是你的問題,我貝利前夕。

要打開兩個不同的結果集,您必須有兩個單獨的Statement實例,因此每個實例都可以有其自己的ResultSet。否則,在同一個Statement實例上運行第二個查詢將關閉第一個ResultSet

看到這個答案的詳細信息:https://stackoverflow.com/a/8579669/193453

此外,看一看的Javadoc,java.sql.Statement類:

默認情況下,每個Statement對象只有一個ResultSet對象可以是在開放同時。因此,如果一個ResultSet對象的讀數與另一個對象的讀數交錯,則每個對象必須由不同的Statement對象生成 。如果存在打開的對象,那麼 Statement接口中的所有執行方法都將隱式關閉一個語句的當前ResultSet 對象。

+0

接受,因爲部分你說一個連接打開1條語句我試圖接取答案相同的連接答案與其他語句的連接相同 –

相關問題