Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 异常:从两个表中提取值时关闭ResultSet后不允许操作_Java_Mysql_Sql - Fatal编程技术网

Java 异常:从两个表中提取值时关闭ResultSet后不允许操作

Java 异常:从两个表中提取值时关闭ResultSet后不允许操作,java,mysql,sql,Java,Mysql,Sql,我试图在一个try-catch块内从两个表中获取值,但通过SqlException操作,ResultSet关闭后不允许 try { JdbcConnection.connectDB(); String sql = "SELECT * FROM projects where username = '" + username + "' && project_id ='" + p_id + "'";

我试图在一个try-catch块内从两个表中获取值,但通过SqlException操作,ResultSet关闭后不允许

    try {
        JdbcConnection.connectDB();
        String sql = "SELECT * FROM projects where username = '" + username
                + "' &&  project_id  ='" + p_id + "'";
        String sql1 = "SELECT * FROM rewards where project_id  ='" + p_id
                + "'";

        ResultSet rs = JdbcConnection.stmt.executeQuery(sql);
        ResultSet rs1 = JdbcConnection.stmt.executeQuery(sql1);
        while (rs.next()) {
            fname.setText(rs.getString(3).toString());
            lname.setText(rs.getString(4).toString());
            uname.setText(rs.getString(5).toString());
            pwd.setText(rs.getString(6).toString());
            addr.setText(rs.getString(7).toString());
            ctry.setText(rs.getString(8).toString());
            acc_no.setText(rs.getString(9).toString());

        }
        while (rs1.next()) {
            rwd1.setText(rs1.getString(2));
            rwd2.setText(rs1.getString(4));
            rwd3.setText(rs1.getString(6));
            rwd4.setText(rs1.getString(8));
            rwd5.setText(rs1.getString(10));
        }
        rs.close();
    } catch (SQLException sqlexc) {
        JOptionPane.showMessageDialog(null, "" + sqlexc);
    }
代码中可能存在什么问题

printStackTrace()

java.sql.SQLException:结果集关闭后不允许操作
位于com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)
位于com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)
位于com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975)
位于com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920)
位于com.mysql.jdbc.ResultSetImpl.checkClosed(ResultSetImpl.java:804)
位于com.mysql.jdbc.ResultSetImpl.next(ResultSetImpl.java:6986)
在project.ProjectDetails.(ProjectDetails.java:116)
位于project.ArtistProject.mouseClicked(ArtistProject.java:198)
在java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:253)
位于java.awt.Component.ProcessMouseeEvent(Component.java:6041)
位于javax.swing.JComponent.ProcessMouseeEvent(JComponent.java:3260)
位于java.awt.Component.processEvent(Component.java:5803)
位于java.awt.Container.processEvent(Container.java:2058)
位于java.awt.Component.dispatchEventImpl(Component.java:4410)
位于java.awt.Container.dispatchEventImpl(Container.java:2116)
位于java.awt.Component.dispatchEvent(Component.java:4240)
位于java.awt.LightweightDispatcher.RetargetMouseeEvent(Container.java:4322)
位于java.awt.LightweightDispatcher.ProcessMouseeEvent(Container.java:3995)
位于java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
位于java.awt.Container.dispatchEventImpl(Container.java:2102)
位于java.awt.Window.dispatchEventImpl(Window.java:2429)
位于java.awt.Component.dispatchEvent(Component.java:4240)
位于java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
位于java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
位于java.awt.EventDispatchThread.PumpeEventsforFilter(EventDispatchThread.java:183)
位于java.awt.EventDispatchThread.PumpeEventsforHierarchy(EventDispatchThread.java:173)
位于java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
位于java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
在java.awt.EventDispatchThread.run(EventDispatchThread.java:121)

我想你应该为
rs1

创建不同的语句(
stmt
),请发布异常堆栈跟踪。@SotiriosDelimanolis我也发布了堆栈跟踪,请帮我解决可能出现的问题。
    java.sql.SQLException: Operation not allowed after ResultSet closed
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1078)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:989)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:975)
at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:920)
at com.mysql.jdbc.ResultSetImpl.checkClosed(ResultSetImpl.java:804)
at com.mysql.jdbc.ResultSetImpl.next(ResultSetImpl.java:6986)
at project.ProjectDetails.<init>(ProjectDetails.java:116)
at project.ArtistProject.mouseClicked(ArtistProject.java:198)
at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:253)
at java.awt.Component.processMouseEvent(Component.java:6041)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3260)
at java.awt.Component.processEvent(Component.java:5803)
at java.awt.Container.processEvent(Container.java:2058)
at java.awt.Component.dispatchEventImpl(Component.java:4410)
at java.awt.Container.dispatchEventImpl(Container.java:2116)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4322)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3995)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3916)
at java.awt.Container.dispatchEventImpl(Container.java:2102)
at java.awt.Window.dispatchEventImpl(Window.java:2429)
at java.awt.Component.dispatchEvent(Component.java:4240)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)