SQL 解説書

命名規則と暗黙オブジェクト名修飾

名前を形成するための規則は、 その名前で指定されるオブジェクトの種類によって異なります。 データベース・オブジェクト名は、1 つの識別子で構成されているか、 2 つの識別子で構成されるスキーマ修飾オブジェクトとなっています。 スキーマ修飾オブジェクト名は、スキーマ名なしで指定することができます。 この場合、スキーマ名は暗黙指定になります。

動的 SQL ステートメントでは、スキーマ修飾オブジェクト名は、 修飾子のないオブジェクト名参照の修飾子として CURRENT SCHEMA 特殊レジスター値を暗黙的に使用します。 デフォルトでは、この値は現行の許可 ID に設定されています。 詳細については、 SET SCHEMAを参照してください。 SQL ステートメントが DYNAMICRULES BIND オプションを使用してバインドされたパッケージからのものである場合、 修飾に CURRENT SCHEMA 特殊レジスターは使用されません。 DYNAMICRULES BIND パッケージでは、 動的 SQL ステートメント内にある修飾されていないオブジェクト参照子を修飾するための値として、 パッケージのデフォルト修飾子が使用されます。

静的 SQL ステートメントでは、 QUALIFIER プリコンパイル / バインド・オプションにより、 未修飾オブジェクト名の修飾子が暗黙指定されます。 デフォルトでは、この値はパッケージの許可 ID に設定されています。 詳細については、コマンド解説書 を参照してください。

構文図では、異なる種類の名前には異なる用語を使用しています。 以下のリストでそのような用語を定義します。 各種の識別子の最大長については、付録 A, SQL の制限値を参照してください。

alias-name
別名を指定するスキーマ修飾名。

attribute-name
構造化データ・タイプを指定する識別子。

authorization-name
ユーザーまたはグループを指定する識別子。 文字に関しては以下の制限が適用されます。

bufferpool-name
バッファー・プールを指定する識別子。

column-name
表または視点の列を指定する修飾子付きまたは修飾子のない名前。 修飾子は、表名、視点名、ニックネーム、または相関名です。

condition-name
SQL プロシージャーの条件を指定する識別子。

constraint-name
参照制約、基本キー制約、固有制約、または表検査制約を指定する識別子。

correlation-name
結果表を指定する識別子。

cursor-name
SQL カーソルを指定する識別子。 ホストとの互換性を保つため、この名前にハイフン文字を使用することもできます。

data-source-name
データ・ソースを指定する識別子。 この識別子は、リモート・オブジェクト名を構成する 3 部分のうちの 1 番目です。

descriptor-name
コロンの後に、SQL 記述子域 (SQLDA) を指定するホスト識別子を付けたもの。 ホスト識別子の説明については、 ホスト変数の参照を参照してください。 記述子名には標識変数は含まれません。

distinct-type-name
特殊タイプ名を指定する修飾子付きまたは修飾子のない名前。 SQL ステートメントでの修飾子のない特殊タイプ名は、 文脈に応じてデータベース・マネージャーによって暗黙のうちに修飾されます。

event-monitor-name
事象モニターを指定する識別子。

function-mapping-name
関数マッピングを指定する識別子。

function-name
関数を指定する、修飾子付きまたは修飾子のない名前。 SQL ステートメントにおける修飾子のない関数名は、 文脈に応じてデータベース・マネージャーによって暗黙のうちに修飾されます。

group-name
構造タイプ用に定義した変換グループを指定する、修飾子のない識別子。

host-variable
ホスト変数を指定するトークンを連結したもの。 ホスト変数の参照に説明されているように、 ホスト変数には少なくとも 1 つのホスト識別子が含まれます。

index-name
索引または索引指定を指定するスキーマによって修飾された名前。

label
SQL プロシージャーのラベルを指定する識別子。

method-name
メソッドを指定する識別子。 メソッドのスキーマ・コンテキストは、そのメソッドのサブジェクト・タイプ (または、 サブジェクト・タイプのスーパータイプ) のスキーマによって決まります。

nickname
連合サーバーが表または視点に参照することを指定する、 スキーマによって修飾された名前。

nodegroup-name
ノードグループを指定する識別子。

package-name
パッケージを指定するスキーマ修飾名。

parameter-name
プロシージャー、ユーザー定義関数、メソッド、 または索引拡張機能で参照できるパラメーターを指定する識別子。

procedure-name
プロシージャーを指定する修飾子付きまたは修飾子のない名前。 SQL ステートメントにおける修飾子のないプロシージャー名は、 文脈に応じてデータベース・マネージャーによって暗黙のうちに修飾されます。

remote-authorization-name
データ・ソースのユーザーを指定する識別子。 許可名に関する規則は、データ・ソースごとに異なります。

remote-function-name
データ・ソース・データベースに登録されている関数を指定する名前。

remote-object-name
データ・ソース表または視点を指定するとともに、 その表または視点が存在しているデータ・ソースを識別する 3 部分名。 この名前は、データ・ソース名、リモート・スキーマ名、 およびリモート表名の 3 部分で構成されます。

remote-schema-name
データ・ソース表または視点が属するスキーマを指定する名前。 この名前は、リモート・オブジェクト名を構成する 3 部分のうちの 2 番目です。

remote-table-name
データ・ソースにある表または視点を指定する名前。 この名前は、リモート・オブジェクト名を構成する 3 部分のうちの 3 番目です。

remote-type-name
データ・ソース・データベースがサポートするデータ・タイプ。 システムに組み込まれたタイプの場合は、長形式を使用しないでください (たとえば、 CHARACTER ではなく CHAR を使用してください)。

savepoint-name
保管点を指定する識別子。

schema-name
SQL オブジェクトを論理的にグループ化するための識別子。 オブジェクト名の修飾子として使用されるスキーマ名は、 以下のものから暗黙的に決定されます。

混乱を避けるために、スキーマとしてスキーマ名「SESSION」を使わないようお勧めします。 ただし、宣言済みのグローバル一時表のスキーマは除きます (この場合は、 スキーマ名「SESSION」を使用する必要があります)。

server-name
アプリケーション・サーバーを指定する識別子。 連合システムでは、server-name によってデータ・ソースのローカル名も指定します。

specific-name
固有名を指定する、修飾子付きまたは修飾子のない名前。 SQL ステートメントにおける修飾子のない固有名は、 文脈に応じてデータベース・マネージャーによって暗黙のうちに修飾されます。

SQL-variable-name
SQL プロシージャー・ステートメントのローカル変数名を定義します。 SQL 変数名は、ホスト変数名が許可されている他の SQL ステートメントで使うこともできます。 この名前に対しては、SQL 変数を宣言した複合ステートメントのラベルで修飾できます。

statement-name
作成済み SQL ステートメントを指定する識別子。

supertype-name
タイプ名のスーパータイプを指定する修飾子付きまたは修飾子のない名前。 SQL ステートメントにおける修飾子のないスーパータイプ名は、 文脈に応じてデータベース・マネージャーによって暗黙のうちに修飾されます。

table-name
表を指定するスキーマによって修飾された名前。

tablespace-name
表スペースを指定する識別子。

trigger-name
トリガーを指定するスキーマによって修飾された名前。

type-mapping-name
データ・タイプ・マッピングを指定する識別子。

type-name
タイプ名を指定する修飾子付きまたは修飾子のない名前。 SQL ステートメントにおける修飾子のないタイプ名は、 文脈に応じてデータベース・マネージャーによって暗黙のうちに修飾されます。

typed-table-name
タイプ付き表を指定するスキーマによって修飾された名前。

typed-view-name
タイプ付き視点を指定するスキーマによって修飾された名前。

view-name
視点を指定するスキーマによって修飾された名前。

wrapper-name
ラッパーを指定する識別子。


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