首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

PowerBuilder 呼叫 SQL Server 預存程序取得返回值與輸出參數

     編輯:關於SqlServer

預存程序定義

CREATE PROCEDURE sp_results_demo
    @InParmInt INT, @OutParmInt INT OUTPUT
AS
BEGIN
    SELECT 1, 2, 3, 4;
    SELECT uid, id FROM sysobjects WHERE type = 'U';
    SELECT @OutParmInt = 69;
    RETURN 16;
END

PowerScript 程式碼

LONG ll_Return, ll_Parm1, ll_Parm2
LONG ll_Res1, ll_Res2, ll_Res3, ll_Res4, ll_Res5, ll_Res6

DECLARE results_demo PROCEDURE FOR
    @ReturnValue = sp_results_demo
    @InParmInt = :ll_Parm1,
    @OutParmInt = :ll_Parm2 OUTPUT
USING SQLCA;

EXECUTE results_demo;

-- 第一個結果集 (4 欄)
DO WHILE SQLCA.SQLCode = 0
    FETCH results_demo INTO :ll_Res1, :ll_Res2, :ll_Res3, :ll_Res4;
LOOP

-- 第二個結果集 (2 欄)
FETCH results_demo INTO :ll_Res5, :ll_Res6;
DO WHILE SQLCA.SQLCode = 0
    FETCH results_demo INTO :ll_Res5, :ll_Res6;
LOOP

-- 取得返回值與 OUTPUT 參數
FETCH results_demo INTO :ll_Return, :ll_Parm2;

CLOSE results_demo;

關鍵點

  • 多結果集依序 FETCH,每個集合結束由 SQLCode <> 0 判斷。
  • 最後一次 FETCH 取得 @ReturnValue 與 OUTPUT 參數。
  • USING SQLCA 指定交易物件,確保連線上下文一致。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved