当前位置: 当前位置:首页 >应用开发 >java调用Sql Server分页存储过程的实例 正文

java调用Sql Server分页存储过程的实例

2025-11-04 19:30:40 来源:多维IT资讯作者:应用开发 点击:236次
java调用Sql Server分页存储过程的实例
复制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 {                  // 连接数据库驱动                  Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");                  String str = "jdbc:microsoft:sqlserver://localhost:1433;databasename=test";      con = DriverManager.getConnection(str,调用 use, pwd);                  // 设置存储过程参数                  String st = "{call Paging(?,?,?)}";      callsta = con.prepareCall(st);                  callsta.setString(1, "select * from T_employee");                  callsta.setInt(2, 1);                  callsta.setInt(3, 3);                  // 循环输出调用存储过程的记录结果                  StringBuffer sb=new StringBuffer();                  int rsNum=0;//统计结果集的数量                  int updateCount = -1;                  boolean flag = callsta.execute();// 这个而尔值只说明第一个返回内容是更新计数还是结果集。云服务器                  do {      updateCount = callsta.getUpdateCount();                      if (updateCount != -1) {// 说明当前行是页存一个更新计数                          // 处理.                          System.out.println("..说明当前行是一个更新计数..");                          callsta.getMoreResults();                          continue;// 已经是更新计数了,处理完成后应该移动到下一行                          // 不再判断是站群服务器否是ResultSet                      }      rs = callsta.getResultSet();                      if (rs != null) {// 如果到了这里,说明updateCount == -1                          // 处理rs                          rsNum++;                          System.out.println("统计结果集的数量:"+rsNum);                          if (rs != null) {                              ResultSetMetaData rsrsmd = rs.getMetaData(); // 获取字段名                              int numberOfColumns = rsmd.getColumnCount(); // 获取字段数                              int i = 0;                              while (rs.next()) { // 将查询结果取出                                  for (i = 1; i <= numberOfColumns; i++) {      //                              System.out.println(rs.getInt("总页数"));                                      String date = rs.getString(i);                                      sb.append(date+" ");                                  }                              }                              rs.close();                          }                          callsta.getMoreResults();                          continue;                          // 是结果集,处理完成后应该移动到下一行                      }                      // 如果到了这里,说明updateCount == -1 && rs == null,什么也没的企商汇了                      System.out.println(sb.toString());                  } while (!(updateCount == -1 && rs == null));                  // callsta.getXXX(int);//获取输出参数              } catch (Exception e) {                  e.printStackTrace();              }          }          public static void main(String[] age) {              Study3 study = new Study3();          }      }    1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.36.37.38.39.40.41.42.43.44.45.46.47.48.49.50.51.52.53.54.55.56.57.58.59.60.61.62.63.64.65.66.67.68.69.70.71.72.73.74.
作者:系统运维
------分隔线----------------------------
头条新闻
图片新闻
新闻排行榜