pre.setString(1, desttermid);
res=pre.executeQuery();如何获得 res 的影响行数 int i = res.getInt(1); // 我的sql select id,name from tableswap 出异常了
java.sql.SQLException: Before start of result set
at com.mysql.jdbc.ResultSet.checkRowPos(ResultSet.java:3625)

解决方案 »

  1.   

    获取受影响的行数
    rs.getFetchSize()
      

  2.   

    不明白什么叫【如何获得 res 的影响行数  】,如果你想得到这个ResultSet有多少行,其实最快是select count(*)后,然后rs.next()再rs.getInt(1);
    你那个错误是因为你没有先调用rs.next();
      

  3.   

    getFetchSize()方法不是获得记录数,而是获得每次抓取的记录数,默认是0,也就是说不限制。可以用setFetchSize()来设置,而getFetchSize()是用来读出那个设置值。设置为正整数之后,ResultSet每次抓取的最多纪录数就有了上限,而不是所有符合条件的记录
      

  4.   

    1.
    count=0;
    while(resultSet.next()){
        count++;
    }
    2.
    resultSet.last();
    count=resultSet.getRow();
    3.
    如楼上所述
    String sql = "select count(*) totalCount from gonglue";
    count=rs.getInt("totalCount");
      

  5.   


    rs.last();
    count = rs.getRow();