1

我的 java 应用程序中的查询有问题。这是一个简单的查询,可以根据用户的姓名获得用户得分,但是,我经常收到错误消息,无法确定问题出在哪里。

            String driver = "com.mysql.jdbc.Driver";    
        Class.forName(driver).newInstance();

        con = DriverManager.getConnection(url, USERNAME, PASSWORD);   
        st  = con.createStatement();


        PreparedStatement preStatement = con.prepareStatement("select score from playerscore where name=?");
        preStatement.setString(1, "tomcat");

        ResultSet resultSet = preStatement.executeQuery();
        score               = resultSet.getInt(1);

有人可以睁一只眼闭一只眼,为我指明正确的方向吗?

编辑:堆栈跟踪的图像

http://imageshack.us/photo/my-images/854/stackr.jpg/

4

1 回答 1

6

最初,ResultSet位于第一行之前。因此,您必须先调用resultSet.next()移动到第一行,然后才能检索其任何值。

boolean您可以通过检查返回的来验证第一行是否确实存在resultSet.next()

于 2012-04-14T14:39:00.253 回答