java - 异常启动前的MySQL

标签 java mysql jdbc

<分区>

我收到一条错误消息,指出我在结果集开始之前遇到异常。我正在尝试获取一个值(来自 MySQL 数据库的分数)并根据玩家分数将一个值添加到 Java 排名。这是为了创建记分牌。

因此,如果玩家的分数低于当前分数,则排名为 1。如果分数更高,程序将根据 MySQL 数据库中的下一个条目检查分数。我还没有实现将所有当前条目排名更改为递增 1 的功能。

底线:我正在使用 MySQL 和 Java 创建记分牌。 Java 程序根据输入创建一个分数条目,然后将其发送到 MySQL 数据库。

      System.out.println("Your score is: "+score*2+"  (A lower score is better.)");
      try {
   // create a java mysql database connection
   String myDriver = "com.mysql.jdbc.Driver";
   String myUrl = "jdbc:mysql://4.30.110.246:3306/apesbridge2013";
   String dbName = "apesbridge2013";
   String tbName = period + "period";
   Class.forName(myDriver);
   Connection conn = DriverManager.getConnection(myUrl, "user", CENSORED);
   next = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
   ResultSet resultSet = next.executeQuery("SELECT * FROM " + tbName);
   int cscore = resultSet.getInt("score");
   for(int sscore = score; sscore > cscore;){
       resultSet.next();
       cscore = resultSet.getInt("score");
       rank++;
   }

   stmt = conn.createStatement();
   stmt.executeUpdate("insert into " + dbName + "." + tbName + " " + "values(" + rank + ", '" + name + "', " + score + ")");
   stmt.close();
   conn.close();
 }
 catch (Exception e)
 {
   System.err.println("Got an exception! ");
   System.err.println(e.getMessage());
 }

    }

最佳答案

resultSet.next(); 放在 executeQuery 行的正下方。

关于java - 异常启动前的MySQL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14406673/

相关文章:

java - Selenium Webdriver 将鼠标移动到 Point

java - 你如何在 lwjgl 中渲染 2D 文本?

java - 测试字符串是否包含数组中的任何字符串

php - 在codeigniter中删除多个表中的数据

java - Android/Adobe空难报告: java. lang.UnsatisfiedLinkError

mysql - docker + MySQL : Can't access mysql outside the container

MySQL:SELECT...GROUP BY 导致 "Table is read only "错误

jdbc - 使用 JDBC 和 ODBC 将 TEXT 列插入 Informix 数据库的一致方法

java - 在测试阶段未找到 Maven 依赖项(MySQL-Connector)

java - JDBC-无法检索值并删除 mysql 数据库中的表