java調(diào)用Sql Server分頁(yè)存儲(chǔ)過(guò)程的實(shí)例
作者:佚名 
  在開(kāi)發(fā)過(guò)程中,我們經(jīng)常會(huì)用到分頁(yè),SqlServer分頁(yè)存儲(chǔ)過(guò)程在java開(kāi)發(fā)中就可以發(fā)揮巨大的作用。
 Sql Server分頁(yè)存儲(chǔ)過(guò)程可以讓我們的開(kāi)發(fā)更為方便,下面就為您介紹一個(gè)java調(diào)用Sql Server分頁(yè)存儲(chǔ)過(guò)程的實(shí)例,希望可以讓您對(duì)Sql Server分頁(yè)存儲(chǔ)過(guò)程有更深的了解。
- package test;
 - import java.sql.*;
 - public class Study3 {
 - private Connection con;
 - public ResultSet rs;
 - private CallableStatement callsta;
 - private String use = "sa";
 - private String pwd = "sa";
 - public Study3() {
 - try {
 - // 連接數(shù)據(jù)庫(kù)驅(qū)動(dòng)
 - Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
 - String str = "jdbc:microsoft:sqlserver://localhost:1433;databasename=test";
 - con = DriverManager.getConnection(str, use, pwd);
 - // 設(shè)置存儲(chǔ)過(guò)程參數(shù)
 - String st = "{call Paging(?,?,?)}";
 - callsta = con.prepareCall(st);
 - callsta.setString(1, "select * from T_employee");
 - callsta.setInt(2, 1);
 - callsta.setInt(3, 3);
 - // 循環(huán)輸出調(diào)用存儲(chǔ)過(guò)程的記錄結(jié)果
 - StringBuffer sb=new StringBuffer();
 - int rsNum=0;//統(tǒng)計(jì)結(jié)果集的數(shù)量
 - int updateCount = -1;
 - boolean flag = callsta.execute();// 這個(gè)而爾值只說(shuō)明第一個(gè)返回內(nèi)容是更新計(jì)數(shù)還是結(jié)果集。
 - do {
 - updateCount = callsta.getUpdateCount();
 - if (updateCount != -1) {// 說(shuō)明當(dāng)前行是一個(gè)更新計(jì)數(shù)
 - // 處理.
 - System.out.println("..說(shuō)明當(dāng)前行是一個(gè)更新計(jì)數(shù)..");
 - callsta.getMoreResults();
 - continue;// 已經(jīng)是更新計(jì)數(shù)了,處理完成后應(yīng)該移動(dòng)到下一行
 - // 不再判斷是否是ResultSet
 - }
 - rs = callsta.getResultSet();
 - if (rs != null) {// 如果到了這里,說(shuō)明updateCount == -1
 - // 處理rs
 - rsNum++;
 - System.out.println("統(tǒng)計(jì)結(jié)果集的數(shù)量:"+rsNum);
 - if (rs != null) {
 - ResultSetMetaData rsrsmd = rs.getMetaData(); // 獲取字段名
 - int numberOfColumns = rsmd.getColumnCount(); // 獲取字段數(shù)
 - int i = 0;
 - while (rs.next()) { // 將查詢(xún)結(jié)果取出
 - for (i = 1; i <= numberOfColumns; i++) {
 - // System.out.println(rs.getInt("總頁(yè)數(shù)"));
 - String date = rs.getString(i);
 - sb.append(date+" ");
 - }
 - }
 - rs.close();
 - }
 - callsta.getMoreResults();
 - continue;
 - // 是結(jié)果集,處理完成后應(yīng)該移動(dòng)到下一行
 - }
 - // 如果到了這里,說(shuō)明updateCount == -1 && rs == null,什么也沒(méi)的了
 - System.out.println(sb.toString());
 - } while (!(updateCount == -1 && rs == null));
 - // callsta.getXXX(int);//獲取輸出參數(shù)
 - } catch (Exception e) {
 - e.printStackTrace();
 - }
 - }
 - public static void main(String[] age) {
 - Study3 study = new Study3();
 - }
 - }
 
【編輯推薦】
責(zé)任編輯:段燃 
                    來(lái)源:
                    互聯(lián)網(wǎng)
 














 
 
 
 
 
 
 