Java SQL:结果集之前的错误

Min*_*rip 1 java sql resultset

我的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);
Run Code Online (Sandbox Code Playgroud)

有人会注意并指出我正确的方向吗?

编辑:堆栈跟踪的图像

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

Tor*_*ous 6

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

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