我的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/

最佳答案

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

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

关于java - Java SQL:结果集之前的错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10154341/

10-12 05:51