Symfoware Parallel Server RDBユーザーズガイド 応用プログラム開発編
目次 索引 前ページ次ページ

第3章 プロシジャを利用する応用プログラムの作成方法

3.4 プロシジャルーチンの実行

サーバ上のスキーマに登録済のプロシジャルーチンを、クライアント側から呼び出して実行するには、SQL制御文のCALL文を使用します。プロシジャルーチンに引数を指定することで、外部からの入力情報によって処理制御を切り替えることができます。CALL文の引数にナル値を設定または返却する場合には、標識変数を指定します。プロシジャルーチンを使用した応用プログラムの翻訳では、sqlcc、sqlfccまたはsqlcobolコマンドに-W95オプションまたは-W96オプションを指定する必要があります。CALLの指定方法には図:プロシジャルーチン実行の指定方法に示すように2種類があります。

[図:プロシジャルーチン実行の指定方法]

[動的SQL文(PREPARE文/EXECUTE文)での実行]
strcpy(HOST, "CALL 在庫管理.営業所別発注処理(?)");      
                      (1)          (2)
                                                        
 EXEC SQL PREPARE STMID FROM :HOST;                     
 EXEC SQL EXECUTE STMID USING :INDATA;                  
                                 (3)                   

(1) スキーマ名

(2) ルーチン名

(3) 引数

[静的SQL文での実行]
EXEC SQL CALL 在庫管理.営業所別発注処理(1);            
                 (1)         (2)        

(1) スキーマ名

(2) ルーチン名

図:ルーチン実行時のクライアントとサーバの関係に、図:プロシジャルーチンの定義例に示したプロシジャルーチン定義を実行した場合のクライアントとサーバの関係を示します。

[図:ルーチン実行時のクライアントとサーバの関係]


目次 索引 前ページ次ページ

All Rights Reserved, Copyright(C) 富士通株式会社 2006