程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> JDBC應用游標完成分頁查詢的辦法

JDBC應用游標完成分頁查詢的辦法

編輯:關於JAVA

JDBC應用游標完成分頁查詢的辦法。本站提示廣大學習愛好者:(JDBC應用游標完成分頁查詢的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是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();
 }
}

願望本文所述對年夜家java法式設計有所贊助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved