日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

采用JDBC進行數據庫分頁查詢 - 我的java歷程 - BlogJava

 hailin_cqx 2007-08-07

采用JDBC進行數據庫分頁查詢

采用JDBC進行數據庫分頁查詢

 /**
  * 一次只從數據庫中查詢最大maxCount條記錄
  * @param sql 傳入的sql語句
  * @param startNo 從哪一條記錄開始
  * @param maxCount 總共取多少條記錄
  */
 public void getData(String sql,int startNo,int maxCount){
  Connection conn = ConnectionUtil.getConnection();
  try {
//   conn.prepareStatement(sql,游標類型,能否更新記錄);
//      游標類型:
//       ResultSet.TYPE_FORWORD_ONLY:只進游標
//       ResultSet.TYPE_SCROLL_INSENSITIVE:可滾動。但是不受其他用戶對數據庫更改的影響。
//       ResultSet.TYPE_SCROLL_SENSITIVE:可滾動。當其他用戶更改數據庫時這個記錄也會改變。
//      能否更新記錄:
//       ResultSet.CONCUR_READ_ONLY,只讀
//       ResultSet.CONCUR_UPDATABLE,可更新
   PreparedStatement pstat = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
   //最大查詢到第幾條記錄
   pstat.setMaxRows(startNo+maxCount-1);
   ResultSet rs = pstat.executeQuery();
   //將游標移動到第一條記錄
   rs.first();
//   游標移動到要輸出的第一條記錄
   rs.relative(startNo-2);
   while(rs.next())
    System.out.println(rs.getInt(1));
  } catch (SQLException e) {
   e.printStackTrace();
  }
 }
 
 /**
  * 從數據庫中查詢所有記錄,然后通過游標來獲取所需maxCount條記錄
  * @param sql 傳入的sql語句
  * @param startNo 從哪一條記錄開始
  * @param maxCount 總共取多少條記錄
  */
 public void getDataFromAll(String sql,int startNo,int maxCount){
  Connection conn = ConnectionUtil.getConnection();
  try {
   PreparedStatement pstat = conn.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
   ResultSet rs = pstat.executeQuery();
   rs.first();
   rs.relative(startNo-1);
   int i = startNo-1;
   while(i < startNo + maxCount-1 && !rs.isAfterLast()){
    System.out.println(rs.getInt(1));
    i++;
    rs.next();
   }
  } catch (SQLException e) {
   e.printStackTrace();
  }
 }

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多