カタログエレメントの記述

DESC ステートメントにより、Virtual DataPort サーバーのエレメントの説明を取得できます。このステートメントの構文について、「 DESC ステートメントの構文 」で説明します。

DESC ステートメントの構文
DESC QUERYPLAN { <query> | <CREATE REMOTE TABLE> }

DESC SESSION

DESC VQL ASSOCIATION <name:identifier with database>
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL DATABASE [ <name:identifier> ]
    [ ( <DESC DATABASE parameters> [, <DESC DATABASE parameters> ]* ) ]

DESC VQL DATASOURCE <data source type> <name:identifier with database>
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL FOLDER <path:literal>
    [ ( <DESC FOLDER parameter> [, <DESC FOLDER parameter> ]* ) ]

DESC VQL LIST <element DESC statement> [, <element DESC statement>]*
    [ ( <DESC LIST parameter> [, <DESC LIST parameter> ]* ) ]

DESC VQL LISTENER JMS <name:identifier with database >
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL MAP { I18N | SIMPLE } <name:identifier>
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL PROCEDURE <name:identifier with database >
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL TYPE <name:identifier with database>
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL [ INTERFACE ] VIEW <name:identifier with database>
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL VIEWSTATSUMMARY <view name:identifier with database>

DESC VQL { REST | SOAP } WEBSERVICE <name:identifier with database>
    [ FOR ( <operation or resource name:literal>
    [, <operation or resource name:literal>]* )]
    [ PRESERVE_OPERATIONS ]
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL WIDGET <name:identifier with database >
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL WRAPPER <wrapper type> <name:identifier with database>
    [ ( <DESC parameter> [, <DESC parameter> ]* ) ]

DESC VQL WRAPPER ITP [ <name:identifier with database> ]
    [ <ITPilot DESC parameter> ]

<data source type> ::=
    CUSTOM | DF | ESSBASE | JDBC | JSON | LDAP | ODBC | OLAP
    | SALESFORCE | SAPBWBAPI | SAPERP | WS | XML }

<element DESC statement> ::=
    ASSOCIATION <name:identifier with database>
    | DATABASE_CONFIG <name:identifier>
    | DATASOURCE <type:datasource type> <name:identifier with database>
    | FOLDER [<name:database>] <path:literal>
    | INTERFACE VIEW <name:identifier with database>
    | LISTENER JMS <name:identifier with database>
    | PROCEDURE <name:identifier with database>
    | ROLE <name:identifier>
    | USER <name:identifier>
    | VIEW <name:identifier with database> [ WITH STATS ]
    | WIDGET <name:identifier with database>
    | WRAPPER ITP <name:identifier with database>
    | { REST | SOAP } WEBSERVICE <name:identifier with database>
        [ FOR ( <operation or resource name:literal>
        [, <operation or resource name:literal>]* ) ]
        [ PRESERVE_OPERATIONS ]

<wrapper type> ::=
    <data source type>
  | ITP

<DESC FOLDER parameter> ::=
    'includeContents' = { 'yes' | 'no' }       // 'no' by default
  | <DESC parameter>

<DESC DATABASE parameters> ::=
  | 'includeEnvSpecificElements' = { 'yes' | 'no' }    // 'no' by default
  | 'includeNonEnvSpecificElements' = { 'yes' | 'no' } // 'no' by default
  | 'includeVCSConfiguration' = { 'yes' | 'no' }       // 'no' by default
  | <DESC parameter>
  | <ITPilot DESC parameter>

<DESC parameter> ::=
    'dropElements' = { 'yes' | 'no' }                    // 'yes' by default
  | 'replaceExistingElements' = { 'yes' | 'no' }         // 'no' by default
  | 'includeCreateDatabase' = { 'yes' | 'no' }           // 'no' by default
  | 'includeDependencies' = { 'yes' | 'no' }             // 'yes' by default
  | 'includeDeployments' = { 'yes' | 'no' }              // 'no' by default
  | 'includeJars' = { 'yes' | 'no' }                     // 'no' by default
  | 'includeStatistics' = { 'yes' | 'no' }               // 'no' by default
  | 'includeUserPrivileges' = { 'yes' | 'no' }           // 'no' by default
  | 'includeCreateWebService' = { 'yes' | 'no' }         // 'no' by default
  | 'includeProperties' = { 'yes' | 'no' }               // 'no' by default
  | 'exclude_jdbc_wrapper_properties' = { 'yes' | 'no' } // 'no' by default

<DESC LIST parameter> ::=
    'includeServerProperties' = { 'yes' | 'no' }       // 'no' by default
  | 'includeWebContainerProperties' = { 'yes' | 'no' } // 'no' by default
  | <DESC parameter>
  | <DESC FOLDER parameter>

<ITPilot DESC parameter> ::=
    'includeScanners' = { 'yes' | 'no' }               // 'no' by default
  | 'includeCustomComponents' = { 'yes' | 'no' }       // 'no' by default

<query> ::= (「 SELECT ステートメントの構文 」を参照)

<CREATE REMOTE TABLE> ::= (「 CREATE REMOTE TABLE ステートメントの構文 」を参照)

DESC QUERYPLAN <query> は、実行エンジンがクエリの実行に使用する実行プランを返します。 TRACE をクエリの最後に追加すると、クエリはそれによってトレースされる情報も返します。 DESC QUERYPLAN を使用すると、クエリを実行する必要がなくなります。

DESC SESSION は、ユーザーが接続しているデータベースの名前、およびログイン名を返します。

以下のグループのステートメントは、カタログのエレメントの VQL を返します。エレメントがラッパー、ビュー、Web サービス、ウィジェット、またはアソシエーションである場合、ステートメントは、そのエレメントの依存エレメントを作成するのに必要なステートメントも返します。

たとえば、 DESC VQL VIEW V は、ビュー V の作成に必要なステートメントを返します。また、データ型、ラッパー、データソース、ストアドプロシージャ、およびビュー V の定義に必要な他のビューを作成するのに必要なステートメントを返します。 DESC VQL VIEW は実行しても、このビューが依存するエレメントの VQL ステートメントは不要な場合は、パラメーター includeDependencies を追加します。

例: DESC VQL VIEW V ('includeDependencies' = 'no') はセンテンス CREATE VIEW V ... を返しますが、 V が依存するビューおよび V のデータソースを作成するセンテンスは返しません。

DESC VQL FOLDER ステートメントは、フォルダーを再作成する VQL ステートメントを返します。オプション 'includeContents' = 'yes' を追加すると、出力には、他のフォルダーを含む、フォルダー内のエレメントを再作成するステートメントも含まれます。オプション 'includeDependencies' = 'yes' も追加すると、出力には、フォルダー内のエレメントの依存関係を再作成するステートメントも含まれます。

たとえば、ビュー V を含むフォルダー F1 が存在する場合、コマンド DESC VQL FOLDER F1 ('includeDependencies' = 'yes', 'includeContents' = 'yes') は、フォルダーを作成するステートメント、ビュー V を作成するステートメント、および V が依存するエレメントを作成するすべてのステートメントを、それらが異なるフォルダーにある場合にも返します。

DESC VQL LIST A, B は、エレメント A および B の作成に必要なステートメントを返します。たとえば、 DESC VQL LIST VIEW V, DATASOURCE JDBC D は、ビュー V 、データソース D 、およびそれらの依存関係を作成するセンテンスを返します。

DESC VQL WEBSERVICE に対して、 FOR トークンとそれに続く 1 つ以上の演算子またはリソースの名前を追加することができます。このコマンドを実行すると、既存の Web サービスに操作やリソースを追加することのできる、 ALTER REST WEBSERVICE ステートメントや ALTER SOAP WEBSERVICE ステートメントが生成されます。Web サービスがすでに存在する場合に、既存の操作やリソースを保持する CREATE OR REPLACE ステートメントを生成したいときには、 PRESERVE_OPERATIONS トークンを DESC VQL WEBSERVICE ステートメントに追加するだけで済みます。


パラメーター includeProperties = yes を使用すると、環境依存のパラメーターの値は、実際の値の代わりに、変数になります。たとえば、 CREATE DATASOURCE JDBC ステートメントでこのプロパティを使用すると、 DATABASEURI の値は、データベースの URI ではなく、 ${databases.common_database.datasources.jdbc.oracle_product.DATABASEURI} のようになります。

includeProperties = yes を追加するときに、 CREATE WRAPPER JDBC ステートメントのパラメーター CATALOGNAMESCHEMANAME に、変数ではなく実際の値を含めたい場合は、 'exclude_jdbc_wrapper_properties' = 'yes' を追加してください。


オプション 'includeCreateDatabase'='yes' を指定してデータベースをエクスポートすると、出力にステートメント CREATE DATABASE と ALTER DATABASE が含まれるので、データベースの VCS 設定を含め、同じ構成でデータベースが作成されます。VCS 設定をエクスポートしたくない場合は、 'includeVCSConfiguration'='no' を追加してください。


デフォルトでは、ビューの統計情報は、サーバー全体の VQL をエクスポートするときにのみ、結果に含まれます。データベースやビューをエクスポートするときには含まれません。ビューの統計情報を結果に含めるには、オプション 'includeStatistics'='yes' を追加してください。