在JSP页面中进行测试,代码如下:

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="java.sql.*"%>

<% Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver") .newInstance();

String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";

//pubs为你的数据库的

String user = "sa";

String password = "";

Connection conn = DriverManager.getConnection(url, user, password);

//不带参数的存储过程,并且返回结果集

CallableStatement stmt = conn.prepareCall("{call ghy_proc}");

stmt.execute();

ResultSet rs = stmt.getResultSet();

while (rs.next())

{ out.println(rs.getString(1)); }

out.println("
");

//带参数的存储过程,并且返回值

stmt = conn.prepareCall("{call ghy_proc_return(?,?)}");

stmt.registerOutParameter(1, Types.INTEGER);

stmt.registerOutParameter(2, Types.INTEGER);

stmt.setInt(1, 10); stmt.setInt(2, 10);

stmt.execute();

out.println("加1的值是:" + stmt.getString(1) + "
"); out.println("减1的值是:" + stmt.getString(2) + "
");

//带参数的存储过程,并且返回结果集

stmt = conn.prepareCall("{call ghy_proc_var(?)}");

stmt.setInt(1, 14);

stmt.execute();

rs = stmt.getResultSet();

while (rs.next())

{ out.println("job_id value is:" + rs.getString(1) + "
"); out.println("job_desc value is:" + rs.getString(2) + "
");

} %>

三个SQL Server 2000存储过程如下:

CREATE PROCEDURE ghy_proc AS

select * from jobs GO CREATE PROCEDURE ghy_proc_return

(@max int output,@min int output) AS select @max=@max+1 select @min=@min-1 GO CREATE PROCEDURE ghy_proc_var (@id int) AS select * from jobs where job_id=@id GO

Java+sql server+CallableStatement调用存储过程三种情况 (转)相关推荐

  1. java statement 存储过程_Java+sql server+CallableStatement调用存储过程三种情况 (转)...

    在JSP页面中进行测试,代码如下: String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs&quo ...

  2. Java中OutOfMemoryError(内存溢出)的三种情况及解决办法

    Java中OutOfMemoryError(内存溢出)的三种情况及解决办法 相信有一定java开发经验的人或多或少都会遇到OutOfMemoryError的问题,这个问题曾困扰了我很长时间,随着解决各 ...

  3. 恢复 Microsoft SQL Server SA 密码的三种方法

    如果您丢失了 SA 密码,您可能认为唯一的选择是重新安装 SQL Server 并重新附加所有用户数据库.只需在单用户模式下启动 SQL Server,您就可以使用 OSQL 命令轻松恢复 SA 密码 ...

  4. SQL Server基础之存储过程

    阅读目录 一:存储过程概述 二:存储过程分类 三:创建存储过程 1.创建无参存储过程 2.修改存储过程 3.删除存储过程 4.重命名存储过程 5.创建带参数的存储过程   简单来说,存储过程就是一条或 ...

  5. 通过 Visual Studio 对 SQL Server 中的存储过程设置断点并进入存储过程对其进行调试...

    通过 Visual Studio 的 Professional 和 Team System 版本,我们可以对 SQL Server 中的存储过程设置断点并进入存储过程对其进行调试,这样我们可以象调试应 ...

  6. SQL Server 初步学习存储过程总结

    一:存储过程概述  SQL Server中的存储过程是使用T_SQL编写的代码段.它的目的在于能够方便的从系统表中查询信息,或者完成与更新数据库表相关的管理任务和其他的系统管理任务.T_SQL语句是S ...

  7. Sql Server实用操作-存储过程精解

    CREATE PROCEDURE 创建存储过程,存储过程是保存起来的可以接受和返回用户提供的参数的 Transact-SQL 语句的集合.可以创建一个过程供永久使用,或在一个会话中临时使用(局部临时过 ...

  8. Sql Server系列:存储过程

    1 存储过程简介 存储过程是使用T-SQL代码编写的代码段.在存储过程中,可以声明变量.执行条件判断语句等其他编程功能.在MS SQL Server 2012中存储过程主要分三类:系统存储过程.自定义 ...

  9. 在Visual Studio 2005中调试SQL Server 2005的存储过程

    介绍 SQL Server 2000可以让我们在查询分析器中直接调试存储过程( 更多的信息请参看:用SQL Server 2000的查询分析器调试存储过程) 到了现在的SQL Server 2005, ...

最新文章

  1. cesium 设置时间_Cesium之地形制作与合并
  2. [C++] Lvalue and Rvalue Reference
  3. linux第9天 UDP
  4. Trie Tree 实现中文分词器
  5. java委托机制教程_通过反射实现Java下的委托机制代码详解
  6. 高级程序员和低级程序员的区别
  7. Java购物车swing_JAVA课程设计--购物车
  8. 在 react 里写 vue3 ? 还写了自定义 hooks和 Hoc 构建了响应式 !
  9. containsall_Java Vector containsAll()方法与示例
  10. Java JDK下载与安装教程
  11. cdrx8如何批量导出jpg_Coreldraw 8插件下载|Coreldraw x8高版本文件(保存为coreldraw 8.0版)最新插件_ - 极光下载站...
  12. 解决win10删除文件时找不到该项目的问题
  13. 移动硬盘启动win7蓝屏7b_win7启动蓝屏0X0000007B代码的解决方法
  14. Windows XP更新后出现“你可能是盗版软件受害者”解决方法
  15. JAVA:18位身份证号码验证工具类(识别性别和生日、计算年龄)
  16. Kylin源码解析——从CubingJob的构建过程看Kylin的工作原理
  17. 企业微信又更新了!聊天敏感词、下载直播回放视频、聊天文件支持10GB...
  18. 华为和华三(H3C),你总要选一个才行
  19. 华为路由器实现ipsec
  20. @技术文章为什么要写得简练

热门文章

  1. put url带参数_一道腾讯面试题:如何快速判断某 URL 是否在 20 亿的网址 URL 集合中?...
  2. 操作系统之内存管理:6、页面分配策略、抖动、工作集
  3. 计算机网络之网络层:4、ARP协议
  4. USACO-Section2.2 Party Lamps
  5. JS 常用函数一(弹对话框、操作HTML元素、写HTML文档、写到控制台、查找元素、元素插入内容、改变HTML属性、计时)
  6. cannot use a string pattern on a bytes-like object(bytes与str互转)
  7. Linux C 存储映射IO
  8. 攻击者利用的Windows命令、横向渗透工具分析结果列表
  9. spring RestTemplate用法详解
  10. curl和file_get_contents 区别以及各自的优劣