Sql Server 調用存儲過程

          Posted on 2007-07-16 17:25 胡娟 閱讀(2800) 評論(1)  編輯  收藏 所屬分類: JAVA
          創建存儲過程:
          1、在企業管理器中新建存儲過程
          2、在查詢分析器中編輯存儲過程(帶有參數和返回值的)
           1SET QUOTED_IDENTIFIER ON 
           2GO
           3SET ANSI_NULLS ON 
           4GO
           5
           6ALTER    procedure insertUserinfo @name varchar(50),@sex varchar(50),@birthday varchar(50),@returnValue int = 0 output
           7
           8as
           9
          10insert into userinfo (name,sex,birthday) values (@name,@sex,@birthday)
          11
          12set @returnValue = 1;
          13
          14GO
          15SET QUOTED_IDENTIFIER OFF 
          16GO
          17SET ANSI_NULLS ON 
          18GO
          Java 調用存儲過程
          1.數據庫連接
           1package com.hujuan.conn;
           2import java.sql.Connection;
           3import java.sql.DriverManager;
           4import java.sql.SQLException;
           5
           6
           7public  class DatabaseConn {
           8
           9    public static Connection getConnection(){
          10        String className= "com.microsoft.jdbc.sqlserver.SQLServerDriver";
          11        String url = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=login";
          12        String name = "sa";
          13        String password = "sasa";
          14        try {
          15            Class.forName(className);
          16            
          17            return DriverManager.getConnection(url,name,password);
          18        }
           catch (ClassNotFoundException e) {
          19            e.printStackTrace();
          20        }
           catch (SQLException e) {
          21            e.printStackTrace();
          22        }

          23        return null;
          24    }

          25}
          2.通過連接調用存儲過程
           1package com.hujuan.dao;
           2import java.sql.CallableStatement;
           3import java.sql.Connection;
           4import java.sql.ResultSet;
           5import java.sql.SQLException;
           6import java.sql.Types;
           7import com.hujuan.conn.DatabaseConn;
           8
           9public class SqlServerProc {
          10
          11    public static void main(String[] args) {
          12        Connection conn = null;
          13        CallableStatement call = null;
          14        conn = DatabaseConn.getConnection();
          15
          16        try {
          17            call = conn.prepareCall("{call insertUserinfo(?,?,?,?)}");
          18            call.setString(1"hujuan");
          19            call.setString(2"");
          20            call.setString(3"1985-06-16");
          21            call.registerOutParameter(4, Types.INTEGER);
          22            call.executeUpdate();
          23            int value = call.getInt(4);
          24            System.out.println(value);
          25        }
           catch (SQLException e) {
          26            e.printStackTrace();
          27        }
          finally{
          28            try {
          29                if(call != null)call.close();
          30                if(conn != null)conn.close();
          31            }
           catch (SQLException e) {
          32                e.printStackTrace();
          33            }

          34        }

          35        
          36    }

          37}
          返回結果集
           1package com.hujuan.dao;
           2import java.sql.CallableStatement;
           3import java.sql.Connection;
           4import java.sql.ResultSet;
           5import java.sql.SQLException;
           6import java.sql.Types;
           7import com.hujuan.conn.DatabaseConn;
           8
           9public class SqlServerProc {
          10
          11    public static void main(String[] args) {Connection conn = null;
          12        CallableStatement call = null;
          13        ResultSet rs = null;
          14        conn = DatabaseConn.getConnection();
          15
          16        try {
          17            call = conn.prepareCall("{?=call selectUserinfo()}");
          18            call.registerOutParameter(1, Types.REAL);
          19            rs = call.executeQuery();
          20            while(rs.next()){
          21                System.out.println(rs.getString("name"));
          22            }

          23
          24        }
           catch (SQLException e) {
          25            e.printStackTrace();
          26        }
          finally{
          27            try {
          28                if(rs != null)rs.close();
          29                if(call != null)call.close();
          30                if(conn != null)conn.close();
          31            }
           catch (SQLException e) {
          32                e.printStackTrace();
          33            }

          34        }

          35    }

          36
          37}

          Feedback

          # re: Sql Server 調用存儲過程  回復  更多評論   

          2007-07-16 18:29 by kay
          寶貝加油,你是最棒的!不要灰心,前途是光明的?。?!

          posts - 28, comments - 5, trackbacks - 0, articles - 1

          Copyright © 胡娟

          主站蜘蛛池模板: 湄潭县| 长垣县| 万源市| 焉耆| 龙南县| 哈尔滨市| 潼关县| 厦门市| 合川市| 文安县| 三门峡市| 鲁甸县| 大名县| 邳州市| 建湖县| 张北县| 邯郸市| 杭锦旗| 图木舒克市| 淮阳县| 建湖县| 乳源| 名山县| 芜湖市| 延庆县| 曲松县| 子洲县| 大丰市| 永胜县| 丰县| 水富县| 呼和浩特市| 万山特区| 扎赉特旗| 北碚区| 墨竹工卡县| 土默特左旗| 南雄市| 会泽县| 贡觉县| 德江县|