ストアドプロシージャから出力パラメーターを取得する

PowerBuilder Tips

方法

PowerBuilder のスクリプト上でストアドプロシージャを呼び出し、出力パラメーターを取得するには、EXECUTE 文でストアドプロシージャを実行し FETCH 文を利用します。 出力パラメータの値は FETCH 文の INTO 句で指定した変数に格納されます。

【例】SQL Server にネイティブ接続しているストアドプロシージャを実行し、出力パラメーターを取得する

// 変数宣言
string ls_cd

// sample_pro を宣言
DECLARE sample_pro PROCEDURE FOR Sample_Pro @col_1 = :ls_cd OUTPUT;

// AutoCommit を true に設定して、DDL 文をトランザクションスコープの外側で発行
SQLCA.AutoCommit = TRUE

// ストアド プロシージャを実行
EXECUTE sample_pro;
IF SQLCA.SQLCode < 0 THEN
    MessageBox(String(SQLCA.SQLCode), SQLCA.SQLErrText)
    RETURN -1
END IF

// 最初の行をフェッチ
FETCH sample_pro INTO :ls_cd;
MessageBox(String(SQLCA.SQLCode), SQLCA.SQLErrText + ls_cd)

// クローズ
CLOSE sample_pro;

// AutoCommit を false に戻す
SQLCA.AutoCommit = FALSE


 

Tips情報

プロダクト :PowerBuilder

バージョン :2017R3

Tips 一覧を見る
PowerBuilder マイグレーション
PowerBuilderとは? ~デキる大人へ変身できる?ローコード開発ツール~