tbwshc

          Java調用SQL Server的存儲過程詳解

          1使用不帶參數的存儲過程

            1

            {call procedure-name}

            作為實例,在 SQL Server 2005 AdventureWorks 示例數據庫中創建以下存儲過程:

            CREATE PROCEDURE GetContactFormalNames

            AS BEGIN SELECT TOP 10 Title + ' ' + FirstName + ' ' + LastName AS FormalName

            FROM Person.Contact END

            此存儲過程返回單個結果集,其中包含一列數據(由 Person.Contact 表中前十個聯系人的稱呼、名稱和姓氏組成)。

            在下面的實例中,將向此函數傳遞 AdventureWorks 示例tb數據庫的打開連接,然后使用 executeQuery 方法調用 GetContactFormalNames 存儲過程。

            public static void executeSprocNoParams(Connection con)

            …{

            try …{

            Statement stmt = con.createStatement();

            ResultSet rs = stmt.executeQuery("{call dbo.GetContactFormalNames}");

            while (rs.next())

            …{

            System.out.println(rs.getString("FormalName"));

            }

            rs.close();

            stmt.close();

            }

            catch (Exception e)

            …{

            e.printStackTrace();

            }

            }

            2使用帶有輸入參數的存儲過程

            使用 JDBC 驅動程序調用帶參數的存儲過程時,必須結合 SQLServerConnection 類的 prepareCall 方法使用 call SQL 轉義序列。帶有 IN 參數的 call 轉義序列的語法如下所示:

            {call procedure-name[([parameter][,[parameter]]…)]}http://jie.baijiale.94ibc.com

            構造 call 轉義序列時,請使用 ?(問號)字符來指定 IN 參數。此字符充當要傳遞給該存儲過程的參數值的占位符。可以使用 SQLServerPreparedStatement 類的 setter 方法之一為參數指定值。可使用的 setter 方法由 IN 參數的數據類型決定。

            向 setter 方法傳遞值時,不僅需要指定要在參數中使用的實際值,還必須指定參數在存儲過程中的序數位置。例如,如果存儲過程包含單個 IN 參數,則其序數值為 1.如果存儲過程包含兩個參數,則第一個序數值為 1,第二個序數值為 2.

            作為如何調用包含 IN 參數的存儲過程的實例,使用 SQL Server 2005 AdventureWorks 示例數據庫中的 uspGetEmployeeManagers 存儲過程。此存儲過程接受名為 EmployeeID 的單個輸入參數

          posted on 2013-10-24 17:05 chen11-1 閱讀(640) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 常熟市| 南京市| 石狮市| 中卫市| 青海省| 公主岭市| 名山县| 青冈县| 仙游县| 鲁山县| 定日县| 井陉县| 龙江县| 顺昌县| 通江县| 平舆县| 阿坝县| 鄢陵县| 武穴市| 布拖县| 泗水县| 凌云县| 怀远县| 白山市| 新巴尔虎左旗| 东丽区| 汝阳县| 牡丹江市| 南华县| 盐山县| 江油市| 额尔古纳市| 房产| 友谊县| 安陆市| 宣威市| 徐水县| 齐齐哈尔市| 民和| 福建省| 临邑县|