PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
4787 | 99/01/27 12:31:12 | RE(3):さっきの続きです By bihu |
4784 | 99/01/27 00:25:18 | RE(2):さっきの続きです By Taka |
4783 | 99/01/27 00:00:49 | RE(1):PB6: PL/SQL表を使用したストアドプロシージャの呼び出し By Taka |
4764 | 99/01/26 15:01:51 | PB6: PL/SQL表を使用したストアドプロシージャの呼び出し By bihu |
カテゴリ:データベース
日付:1999年01月26日 15:01 発信者:bihu
題名:PB6: PL/SQL表を使用したストアドプロシージャの呼び出し
PL/SQL表を利用して、ストアドプロシージャの処理結果をOUT変数に受け取る方法がうまく行きません。
取り出す方法は、過去ログにもあったようにローカル外部関数として取り出す方法で、引数が通常の変数の場合はうま
く結果が表示されます。
(例)ストアドプロシージャ
CREATE OR REPLACE PROCEDURE QISMST.TEST3
(INDATA IN varchar2, OUTDATA OUT varchar2) IS .....
PBでの呼び出し
SQLCA.TEST3(ls_INDATA, ls_OUTDATA)
これと同様に、以下のストアドプロシージャをコールするにはどうしたらよいでしょうか?
CREATE OR REPLACE PACKAGE USERA.TEST_PACK IS
-- パッケージ内で共通に使用するタイプの宣言
TYPE TableARec IS REF CURSOR RETURN TableA%ROWTYPE;
PROCEDURE TEST5(rc1 IN OUT TableARec );
END;
CREATE OR REPLACE PROCEDURE USERA.TEST5(rc1 IN OUT TEST_PACK.TableARec )
AS
BEGIN
OPEN rc1 For Select * from TableA ; END;
PB側には以下のように書きたいのですが、そもそもこういう処理は可能でしょうか?
つまり、出力結果をそのまま配列に格納したいのです。
TEST_PACK.TableARec Outdata[]
SQLCA.TEST5(ls_OUTDATA)
お忙しいところ恐縮ですが、ご存知の方ご教授お願いいたします。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS Oracle SQL*Net 8
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.