カタログエレメントの記述¶
DESC
ステートメントにより、Virtual DataPort サーバーのエレメントの説明を取得できます。
DESC QUERYPLAN { <query> | <CREATE REMOTE TABLE> }
DESC CATALOG_DATABASE
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 GLOBAL_SECURITY_POLICY <name:identifier>
[ ( <DESC parameter> [, <DESC 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 RESOURCE <resource type>
[ VERSION = <literal> ] NAME = <literal>
DESC VQL ROLE <name:identifier>
[ ( <DESC parameter> [, <DESC parameter> ]* ) ]
DESC VQL TAG <name:identifier>
[ ( <DESC parameter> [, <DESC parameter> ]* ) ]
DESC VQL TYPE <name:identifier with database>
[ ( <DESC parameter> [, <DESC parameter> ]* ) ]
DESC VQL USER <name:identifier>
[ ( <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 parameter> [, <DESC parameter> ]* ) ]
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 WRAPPER <wrapper type> <name:identifier with database>
[ ( <DESC parameter> [, <DESC parameter> ]* ) ]
<data source type> ::=
CUSTOM | DF | ESSBASE | JDBC | JSON | LDAP | MONGODB | 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>
| GLOBAL_SECURITY_POLICY <name:identifier>
| INTERFACE VIEW <name:identifier with database>
| LISTENER JMS <name:identifier with database>
| PROCEDURE <name:identifier with database>
| ROLE <name:identifier>
| TAG <name:identifier>
| USER <name:identifier>
| VIEW <name:identifier with database> [ WITH STATS ]
| { REST | SOAP } WEBSERVICE <name:identifier with database>
[ FOR ( <operation or resource name:literal>
[, <operation or resource name:literal>]* ) ]
[ PRESERVE_OPERATIONS ]
<resource type> ::=
{ ESSBASE | JAR| JDBC | JDBC OTHER | KERBEROS | LIBRARY | SAPJCO }
<wrapper type> ::=
<data source type>
<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>
<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
| 'include_dependencies_from_all_databases' = { 'yes' | 'no' } // 'no' 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
| 'exclude_database_elements' = { '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
| 'format_vql' = { 'yes' | 'no' | 'force'} // 'no' by default
<DESC LIST parameter> ::=
'includeServerProperties' = { 'yes' | 'no' } // 'no' by default
| 'includeWebContainerProperties' = { 'yes' | 'no' } // 'no' by default
| <DESC parameter>
| <DESC FOLDER parameter>
<query> ::= (「 SELECT ステートメントの構文 」を参照)
<CREATE REMOTE TABLE> ::= (「 CREATE REMOTE TABLE ステートメントの構文 」を参照)
DESC QUERYPLAN <query>
は、実行エンジンがクエリの実行に使用する実行プランを返します。 TRACE をクエリの最後に追加すると、クエリはそれによってトレースされる情報も返します。 DESC QUERYPLAN
を使用すると、クエリを実行する必要がなくなります。
DESC CATALOG_DATABASE
は、 Virtual DataPort のメタデータを保存するデータベース への接続のパラメータを返します。メタデータを外部データベースに保存するように Virtual DataPort を構成しない場合、このコマンドは、組み込みの Derby データベースへの接続のパラメータを返します。
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
が依存するエレメントを作成するすべてのステートメントを、それらが異なるフォルダにある場合にも返します。
さらに、パラメータ include_dependencies_from_all_databases
を 'yes' に設定することで、すべてのデータベースからの依存関係を含めることができます。この中には、他のデータベースにある依存関係もあります。
たとえば、 db1 と db2 の 2 つのデータベースがあるとします。db1 にはビュー v1 があり、 db2 には v1 の投影としてビュー v2 があります。DESC VQL VIEW db2.v2 ('includeDependencies' = 'yes', 'include_dependencies_from_all_databases' = 'yes')
を実行すると、他のデータベースの依存関係が順番に含まれる初期ブロックを格納する VQL が生成されます。この場合、ビュー v1 が含まれます。このブロックを完了すると、要求されたビュー (この場合は v2) の VQL が生成されます。
特殊なケースとして、このプロパティ (include_dependencies_from_all_databases) が含まれる DESC VQL DATABASE
では、プロパティで dropElements プロパティが指定される場合でも、データベース生成のステートメントは CREATE OR REPLACE に置き換えられます。
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
ステートメントのパラメータ CATALOGNAME
と SCHEMANAME
に、変数ではなく実際の値を含めたい場合は、 'exclude_jdbc_wrapper_properties' = 'yes'
を追加してください。
オプション 'includeCreateDatabase'='yes'
を指定してデータベースをエクスポートすると、出力にステートメント CREATE DATABASE と ALTER DATABASE が含まれるので、データベースの VCS 設定を含め、同じ構成でデータベースが作成されます。VCS 設定をエクスポートしたくない場合は、 'includeVCSConfiguration'='no'
を追加してください。
デフォルトでは、ビューの統計情報は、サーバー全体の VQL をエクスポートするときにのみ、結果に含まれます。データベースやビューをエクスポートするときには含まれません。ビューの統計情報を結果に含めるには、オプション 'includeStatistics'='yes'
を追加してください。
format_vql
: yes
の場合、DESC VQL コマンドは、書式設定された派生ビューの VQL を返します。