Chinaunix首页 | 论坛 | 博客
  • 博客访问: 506246
  • 博文数量: 106
  • 博客积分: 5000
  • 博客等级: 大校
  • 技术积分: 1380
  • 用 户 组: 普通用户
  • 注册时间: 2007-05-21 09:35
文章分类

全部博文(106)

文章存档

2010年(3)

2009年(14)

2008年(55)

2007年(34)

我的朋友

分类:

2007-05-21 21:50:17

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

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
    
<body>
        
<%
                    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(
110);
            stmt.setInt(
210);
            stmt.execute();
            out.println(
"加1的值是:" + stmt.getString(1+ "
");
            out.println(
"减1的值是:" + stmt.getString(2+ "
");

            
//带参数的存储过程,并且返回结果集
            stmt = conn.prepareCall("{call ghy_proc_var(?)}");
            stmt.setInt(
114);
            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+ "
");
            }

        
%>
    
body>
html>

三个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
阅读(1973) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~