SQL 解説書

SET SCHEMA

SET SCHEMA ステートメントは、CURRENT SCHEMA 特殊レジスターの値を変更します。 このステートメントは、トランザクションの制御下にはありません。 DYNAMICRULES BIND オプションを使ってパッケージがバインドされている場合、 このステートメントは何も行いません。

呼び出し

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

許可

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

構文

        .-CURRENT-.          .-=-.
>>-SET--+---------+--SCHEMA--+---+----+-schema-name-----+------><
                                      +-USER------------+
                                      +-host-variable---+
                                      '-string-constant-'
 

説明

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

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

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

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

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

規則

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

  SET SCHEMA RICK

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

  EXEC SQL VALUES (CURRENT SCHEMA) INTO :CURSCHEMA;

値は、前の例で設定された RICK になります。


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