制限事項:このトピックは、Windows 環境 (ローカル開発) にのみ適用されます。
         
 
         アプリケーションが CALL 文を実行するときには、DB2 LUW サーバーは、文で指定されたパラメーターと値を使用してストアド プロシージャのパラメーター リストをビルドします。DB2 LUW サーバーは、システム テーブルからパラメーターに関する情報を取得します。詳細については、『DB2 LUW でのストアド プロシージャの定義』の節を参照してください。パラメーターは、次のいずれかのタイプで定義されます。
         
         
                - IN
                  ストアド プロシージャに値を渡す、入力専用パラメーター
                   
- OUT
                  ストアド プロシージャから呼び出し元のプログラムに値を返す、出力専用パラメーター
                   
- INOUT
                  ストアド プロシージャに値を渡す、またはストアド プロシージャから値を返す、入出力パラメーター
                   
ストアド プロシージャで 1 つ以上の出力専用パラメーターを設定できなかった場合、DB2 LUW サーバーは、ストアド プロシージャへのエントリ時に確立された値で、出力パラメーターを呼び出し元のプログラムに返します。COBOL は、3 つのパラメーター リスト規則をサポートしています。その他の言語は、その他の規則をサポートします。パラメーター リスト規則は、CREATE PROCEDURE 文で定義されたパラメーター スタイルに基づいて選択されます。
         
         
                  
                         
                                | パラメーター スタイル | 説明 | 
                  
                  
                         
                                | SIMPLE | SIMPLE (または GENERAL) を使用して、呼び出し元のプログラムが、入力パラメーター (IN または INOUT) として NULL 値をストアド プロシージャに渡さないようにします。ストアド プロシージャは、CALL 文で渡される各パラメーターの変数を宣言する必要があります。 | 
                         
                                | SIMPLE WITH NULLS | SIMPLE WITH NULLS (または GENERAL WITH NULLS) を使用して、呼び出し元のプログラムが、ストアド プロシージャに渡されるパラメーターに NULL 値を使用できるようにします。次の規則が適用されます。 
                                         次の 2 つの形式のいずれかを使用して、呼び出し元のプログラムの CALL 文の各パラメーターの後に、インジケーター変数が続くようにする必要があります。 
                                                  ホスト変数 :インジケーター変数
                                                         または
                                                         ホスト変数 INDICATOR :インジケーター変数
                                                  ストアド プロシージャは、CALL 文で渡される各パラメーターの変数を宣言する必要があります。
                                         ストアド プロシージャは、CALL 文で渡される各パラメーターのインジケーター変数が含まれる、NULL インジケーター構造体を宣言する必要があります。
                                         エントリでは、ストアド プロシージャは入力パラメーターに関連付けられたすべてのインジケーター変数を調べて、NULL 値を含むパラメーターを特定する必要があります。
                                         出口では、ストアド プロシージャは、出力変数に関連付けられたすべてのインジケーター変数に値を割り当てる必要があります。呼び出し側に対して NULL 値を返す出力変数のインジケーター変数には、負数が割り当てられている必要があります。それ以外の場合は、インジケーター変数にはゼロ (0) の値が割り当てられている必要があります。
                                          | 
                         
                                | DB2SQL | CALL 文のパラメーターに加え、次の引数がストアド プロシージャに渡されます。 
                                         CALL 文の各入力パラメーターに対する NULL インジケーター。
                                         DB2 に返される SQLSTATE。
                                         ストアド プロシージャの修飾名。
                                         ストアド プロシージャの特定名。
                                         DB2 に返される SQL 診断ストリング。
                                          |