zoukankan      html  css  js  c++  java
  • java中mysql查询报错java.sql.SQLException: Before start of result set

    异常:java.sql.SQLException: Before start of result set

    解决方法:使用rs.getString();前一定要加上rs.next();
                    sm = conn.createStatement();
                    ResultSet rs = null;
                    String sql_max = "SELECT id FROM a WHERE name= '" + name
                            + "' ORDER BY online_time DESC LIMIT 1";
                    rs = sm.executeQuery(sql_max);
                    if (rs.next()) {
                        String id = rs.getString("id");
                        int id1 = Integer.parseInt(id);
                        String sql_update = "UPDATE  b SET offline_time = NOW()  WHERE  id=" + id1
                                + " and name= '" + name+ "'";
                        sm.executeUpdate(sql_update);
                    }

    原因:ResultSet对象代表SQL语句执行的结果集,维护指向其当前数据行的光标。每调用一次next()方法,光标向下移动一行。最初它位于第一行之前,因此第一次调用next()应把光标置于第一行上,使它成为当前行。随着每次调用next()将导致光标向下移动一行。在ResultSe对象及其t父辈Statement对象关闭之前,光标一直保持有效。

    参考:https://blog.csdn.net/killua_hzl/article/details/6073618 

  • 相关阅读:
    D
    Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals
    Mondriaan's Dream POJ
    Traveling by Stagecoach POJ
    HDU1024_Max Sum Plus Plus
    stl_vector去重方法
    POJ3255次短路模板
    springMVC和spring上下文的关系
    @Resource @Autowired 区别
    XPath语法
  • 原文地址:https://www.cnblogs.com/webttt/p/10687997.html
Copyright © 2011-2022 走看看