专修虚拟机
2015-12-05 11:58
采纳率: 18.8%
浏览 1.4k

mysql中关于分页查询的输出问题!

String sql = "select * from emp order by empno limit ?,?";
prepareStatement stmt = con.prepareStatement(sql);
stmt.setInt(1, begin);
stmt.setInt(2, end);
ResultSet rs = stmt.executeQuery();
while (rs.next()) {
System.out.println(rs.getInt("empno") + ","
+ rs.getString("ename") + ","
+ rs.getDouble("sal") + "," + rs.getDate("hiredate"));}

        一直对rs.getxxx()的用法比较模糊,求介绍下用法
        返回的结果集rs是不是既可以按列名rs.getxxx("xxx")也可以按rs.getxxx(1)这样读取啊?
        另外上面的代码中输出语句里面我可以不可以写成
           while (rs.next()) {
        System.out.println(rs.getInt(1) + ","
                        + rs.getString(2) + ","
                        + rs.getDouble(3) + "," + rs.getDate(4));}
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

4条回答 默认 最新

  • smile的小小酥 2015-12-05 17:04
    已采纳

    rs相当于一个游标,它指向你所有取出数据里的第一条之前,rs.getString(1)的意思就是取出当前记录的第一列的值。rs.getString ("name")的意思是 取得列名为 name 的值 ,如果你记录里第一列就是名为name的列,那么,它两就是相同的意思。以此类推,如果都是这样,那么你上面的代码也就可以写成下面的形式 希望对你有用~~

    点赞 打赏 评论
  • 毕小宝 2015-12-05 12:45

    看这段代码没有问题啊,你测试过程中出现什么问题了吗?异常信息是什么,调试找找呗。

    点赞 打赏 评论
  • qq_33266980 2015-12-05 14:40

    可以按列,也可以按列名

    点赞 打赏 评论
  • 编程爱好者熊浪 2015-12-06 10:02

    如果写字符串就直接找类名,如果写数字就是指第几列数据

    点赞 打赏 评论

相关推荐 更多相似问题