Java+sql server+CallableStatement调用存储过程三种情况 (转)
2010-10-29 13:19
441 查看
在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
<%@ 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调用存储过程三种情况
- 视图 调用 存储过程 view call procedure in sqlserver 2008
- C#调用SQL Server Reports的方法(存储过程)
- [原]java专业程序代写(qq:928900200),学习笔记之基础入门<SQL_Server_视图_函数_存储过程_触发器等>(二十三)
- Qt调用Server SQL中的存储过程
- java 从零开始,学习笔记之基础入门<SQL_Server_视图_函数_存储过程_触发器等>(二十三)
- C#SQLServer中存储过程的调用
- sql(join中on与where区别) / NVL函数 / oracle存储过程中is和as区别 / JAVA调用数据库存储过程
- 如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- java sql server 存储过程 com.microsoft.sqlserver.jdbc.SQLServerException: 该语句没有返回结果集。
- 【转】Java 调用SQL 语法Server 的存储过程详解
- oracle存储过程procedure实例、调用 sql/plus调用存储过程 java调用存储过程
- oracle pl/sql之java中调用oracle有参存储过程
- 如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- 收集到的:如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- oracle pl/sql应用解析以及存储过程对应到java中的调用方法
- Java,PL/SQL调用 ORACLE存储函数以及存储过程
- pl/sql 有返回值的存储过程 java调用pl/sql过程 实例
- SQLSERVER JDBC 存储过程调用偶尔很慢的原因之一【sp_sproc_columns】
- CallableStatement java中调用存储过程