java调用Sql Server分页存储过程的实例
创始人
2024-07-17 12:31:14
0

Sql Server分页存储过程可以让我们的开发更为方便,下面就为您介绍一个java调用Sql Server分页存储过程的实例,希望可以让您对Sql Server分页存储过程有更深的了解。

  1. package test;     
  2.      
  3. import java.sql.*;     
  4.      
  5. public class Study3 {     
  6.     private Connection con;     
  7.     public ResultSet rs;     
  8.     private CallableStatement callsta;     
  9.     private String use = "sa";     
  10.     private String pwd = "sa";     
  11.      
  12.     public Study3() {     
  13.         try {     
  14.             // 连接数据库驱动     
  15.             Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");     
  16.             String str = "jdbc:microsoft:sqlserver://localhost:1433;databasename=test";     
  17.             con = DriverManager.getConnection(str, use, pwd);     
  18.      
  19.             // 设置存储过程参数     
  20.             String st = "{call Paging(?,?,?)}";     
  21.             callsta = con.prepareCall(st);     
  22.             callsta.setString(1, "select * from T_employee");     
  23.             callsta.setInt(2, 1);     
  24.             callsta.setInt(3, 3);     
  25.      
  26.             // 循环输出调用存储过程的记录结果     
  27.             StringBuffer sb=new StringBuffer();     
  28.             int rsNum=0;//统计结果集的数量     
  29.             int updateCount = -1;     
  30.             boolean flag = callsta.execute();// 这个而尔值只说明第一个返回内容是更新计数还是结果集。     
  31.             do {     
  32.                 updateCount = callsta.getUpdateCount();     
  33.                 if (updateCount != -1) {// 说明当前行是一个更新计数     
  34.                     // 处理.     
  35.                     System.out.println("..说明当前行是一个更新计数..");     
  36.                     callsta.getMoreResults();     
  37.                     continue;// 已经是更新计数了,处理完成后应该移动到下一行     
  38.                     // 不再判断是否是ResultSet     
  39.                 }     
  40.                 rs = callsta.getResultSet();     
  41.                 if (rs != null) {// 如果到了这里,说明updateCount == -1     
  42.                     // 处理rs     
  43.                     rsNum++;     
  44.                     System.out.println("统计结果集的数量:"+rsNum);     
  45.                     if (rs != null) {     
  46.                         ResultSetMetaData rsrsmd = rs.getMetaData(); // 获取字段名     
  47.                         int numberOfColumns = rsmd.getColumnCount(); // 获取字段数     
  48.                         int i = 0;     
  49.                         while (rs.next()) { // 将查询结果取出     
  50.                             for (i = 1; i <= numberOfColumns; i++) {     
  51. //                              System.out.println(rs.getInt("总页数"));     
  52.                                 String date = rs.getString(i);     
  53.                                 sb.append(date+" ");     
  54.                             }     
  55.                         }     
  56.                         rs.close();     
  57.                     }     
  58.                     callsta.getMoreResults();     
  59.                     continue;     
  60.                     // 是结果集,处理完成后应该移动到下一行     
  61.                 }     
  62.                 // 如果到了这里,说明updateCount == -1 && rs == null,什么也没的了     
  63.                 System.out.println(sb.toString());     
  64.             } while (!(updateCount == -1 && rs == null));     
  65.             // callsta.getXXX(int);//获取输出参数     
  66.         } catch (Exception e) {     
  67.             e.printStackTrace();     
  68.         }     
  69.     }     
  70.      
  71.     public static void main(String[] age) {     
  72.         Study3 study = new Study3();     
  73.     }     
  74. }   

 

 

 

 

【编辑推荐】

SQL Server系统表的应用

Sql Server全文索引的迁移

SQL Server全文索引的用法

SQL Server删除表信息的三种方法

SQL Server存储过程的删除方法

相关内容

热门资讯

PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
网络中立的未来 网络中立性是什... 《牛津词典》中对“网络中立”的解释是“电信运营商应秉持的一种原则,即不考虑来源地提供所有内容和应用的...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
全面诠释网络负载均衡 负载均衡的出现大大缓解了服务器的压力,更是有效的利用了资源,提高了效率。那么我们现在来说一下网络负载...
什么是大数据安全 什么是大数据... 在《为什么需要大数据安全分析》一文中,我们已经阐述了一个重要观点,即:安全要素信息呈现出大数据的特征...
如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
30分钟搞定iOS自定义相机 最近公司的项目中用到了相机,由于不用系统的相机,UI给的相机切图,必须自定义才可以。就花时间简单研究...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
P2P的自白|我不生产内容,我... 现在一提起P2P,人们就会联想到正在被有关部门“围剿”的互联网理财服务。×租宝事件使得劳...
Intel将Moblin社区控... 本周二,非营利机构Linux基金会宣布,他们将担负起Moblin社区的管理工作,而这之前,Mobli...