在选择结果时,JDBC Select语句挂起

时间:2016-10-03 19:49:46

标签: java mysql jdbc

我正在制作一个我需要运行以下程序的程序。

SELECT questionID FROM TableX WHERE validAudit = 1;

我能够连接到有问题的数据库,甚至设法成功地向其插入数据。问题是上面的SELECT语句应该将118结果返回到我的结果集。相反,我最多得到一个结果,程序崩溃时出现空指针异常。

public static List<Integer> getQuestionID() throws SQLException{
        Connection conn = null;
        Statement stmt = null;
        List<Integer> questionIDs = null;
        String query = "SELECT questionID FROM Questions WHERE GAIG_AMIG = 1;";

        try{
            conn = getDBConnection();
            stmt = conn.createStatement();
            ResultSet IDs = stmt.executeQuery(query);

            while(IDs.next())
            {
                int id = IDs.getInt("questionID");
                JOptionPane.showMessageDialog(new JFrame(), "Current questionID is " + id, "Question ID", JOptionPane.INFORMATION_MESSAGE);
                questionIDs.add(id);
            }
            IDs.close();
            return questionIDs;
        }catch(SQLException e){
            JOptionPane.showMessageDialog(new JFrame(), e.getMessage());
        }finally{
            if(stmt != null)
                stmt.close();
            if(conn != null)
                conn.close();
        }
        return questionIDs;
    }

这是失败的方法。该计划特别失败:

questionIDs.add(id);

我已经查看过Oracle的文档,以及SO上的文档。我还没有发现一个与我完全相同的实例,而且我无法正确地获取我所知道的信息。

显示我重复的地方。我已经查看了所有可以找到的关于JDBC MySQL的SO问题,并且没有一个与这个确切的场景匹配。

0 个答案:

没有答案