PATH バインド・オプション

PATH オプションは、Db2 が CALL ステートメント内、ユーザー定義データ・タイプ、および関数内で修飾されていないストアード・プロシージャー名を解決するために使用する SQL パスを決定します。

コマンド・オプション オプションの値 と併用
PATH
  • ( スキーマ名 )
  • (USER)
  • (スキーマ名 , USER , …)
注:
  1. PATH バインドオプションは、 ネイティブSQLプロシージャまたはアドバンスト・トリガ用のパッケージのREBINDには有効ではありません。
オプションの場合、 PATH スキーマ名を指定する際には、以下のガイドラインを考慮してください
  • 指定されたスキーマ名は、Db2 によって変換されません。 この振る舞いは、SQL ステートメント内のスキーマ名 (カタログに保管される前に大文字に変換される) の振る舞いとは異なります。 これらの非区切りスキーマ名を大文字で指定しない場合、 Db2 はそれらのスキーマ名をカタログ内で一致させることができません。
  • 区切り ID は、大文字小文字の混合した文字と大文字の両方とも指定することができます。

その PATH キーワードは、キーワードと相互に排他的です。 PATHDEFAULT キーワードとは排他的です。 この両方のキーワードを同じ REBIND コマンドに指定しないでください。

PATH( スキーマ名 )
スキーマを識別します。
PATH(スキーマ名 , …)
スキーマのリストを指定します。 SQL パス内に同じスキーマ名が複数回あってはなりません。
指定できる スキーマの数は、結果となる SQL パスの長さ (2048 バイト以下) により制限されます。 結果の SQL パス の長さは次のように計算します。
  1. 各スキーマの長さを見る。
  2. リスト内の各 schema-name を囲む区切り文字として 2 を加算する。
  3. スキーマの後のコンマごとに 1 を加算する。 最後のスキーマには 1 を加算しないでください
PATH(USER)
最大 128 バイトの schema-name を表わします。 バインド時に、 Db2 は、PATHバインドオプションで指定されたスキーマ名のリストの合計長にこの128バイトの長さを含めます。 スキーマ名のリストの最大長は、コンマ分離文字、 区切り文字、および 128 バイトの USER 値を含めて、2048 バイトです。 この制限を超えると、 Db2 はバインド時にエラーメッセージを表示します。

実行時において、 Db2 は、実行時プロセスの一次認証IDを含むUSER特殊レジスタの実行時値を、PATH スキーマ名 リストのUSERの位置にある スキーマ名 に置き換えます。

スキーマ名のリストに USER を指定する場合、USER キーワードを 区切り文字で囲まないでください。

Db2 プリコンパイル時またはバインド時に、指定されたスキーマが実際に存在することを検証するものではありません。

SYSIBM、SYSFUN、SYSPROC、および SYSIBMADM スキーマを明示的に指定する必要はありません。 Db2 は、これらのスキーマが SQL パスのはじめに存在することを暗黙的に想定しています。 Db2 リストされた順番にこれらのスキーマを追加します。 SYSIBM、SYSFUN、および SYSPROC スキーマを指定しないと、 これらは 2048 バイトの長さには含まれません。

SYSPUBLIC を schema-name に指定してはなりません。

変更の開始PLANMGMT オプションとの相互作用 :REBIND コマンドでこのオプションと PLANMGMT オプションを変更する場合は、 PLANMGMT バインドオプションを参照してください。変更の終わり

デフォルト値 PATH

処理 デフォルトの 値
BIND SERVICE SYSIBM、SYSFUN、SYSPROC、SYSIBMADM、service-qualifier
BIND PLAN SYSIBM、SYSFUN、SYSPROC、SYSIBMADM、 計画修飾子
BIND PACKAGE SYSIBM、SYSFUN、SYSPROC、SYSIBMADM、 パッケージ修飾子
REBIND PLAN 既存の値
REBIND PACKAGE 既存の値

カタログレコード PATH

SYSPACKAGEカタログテーブルのPATHSCHEMAS列を参照してください。

BIND PLAN および BIND PACKAGE のデフォルト値は、カタログには格納されません。 カタログのデフォルト値は、長さゼロのストリングです。

Db2 for z/OS® FUNCPATHをリモートリクエスタから受け取った場合、FUNCPATHをPATHの別名として受け入れる。 ただし、FUNCPATH は BIND コマンドでも REBIND コマンドでも指定できません。