SQL 解説書

SET PATH

SET PATH ステートメントは、CURRENT PATH 特殊レジスターの値を変更します。 このステートメントは、トランザクションの制御下にはありません。

呼び出し

このステートメントは、アプリケーション・プログラムに組み込むか、 あるいは対話式に発行することができます。 このステートメントは、動的に準備可能な実行可能ステートメントです。

許可

このステートメントの実行には、特に権限は必要ありません。

構文

                   .-FUNCTION-.
        .-CURRENT--+----------+---.          .-=-.
>>-SET--+-------------------------+---PATH---+---+-------------->
 
      .-,-----------------------------------.
      V                                     |
>-------+-schema-name--------------------+--+------------------><
        +-SYSTEM PATH--------------------+
        +-USER---------------------------+
        |          .-FUNCTION--.         |
        +-CURRENT--+-----------+---PATH--+
        +-host-variable------------------+
        '-string-constant----------------'
 

説明

schema-name
これは、1 つの部分だけからなる名前で、 アプリケーション・サーバーに存在するスキーマを指定します。 そのスキーマの存否の検査は、パス設定時には行われません。 schema-name (スキーマ名) が間違っていると、 取り込むことができず、以降の SQL 操作に影響を及ぼします。

SYSTEM PATH
この値の指定は、スキーマ名として "SYSIBM"、 "SYSFUN" を指定したのと同じことになります。

USER
USER 特殊レジスターの値。

CURRENT PATH
このステートメントを実行する前の CURRENT PATH の値。 CURRENT FUNCTION PATH も指定できます。

host-variable
CHAR または VARCHAR のタイプの変数です。 host-variable の内容の長さは、30 バイトを超えてはなりません (SQLSTATE 42815)。 NULL に設定することはできません。 host-variable が標識変数を伴っている場合、 その標識変数の値は NULL 値以外でなければなりません (SQLSTATE 42815)。

host-variable の文字は左寄せされていなければなりません。 host-variableスキーマ名 を指定する場合は、 英大文字への変換はなされないので、 すべての文字を大文字小文字の区別も含めて正確に指定する必要があります。

string-constant
8 文字を超えない文字ストリング定数。

規則

例 1: 以下のステートメントは、CURRENT FUNCTION PATH 特殊レジスターを設定します。

   SET PATH = FERMAT, "McDrw #8", SYSIBM

例 2: 以下の例では、 CURRENT PATH 特殊レジスターの現行値を検索して CURPATH という名前のホスト変数に入れます。

   EXEC SQL VALUES (CURRENT PATH) INTO :CURPATH;

例 1 での設定を使った場合、値は "FERMAT","McDrw #8","SYSIBM" になります。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]