GENERATE_VQL_TO_CREATE_JDBC_BASE_VIEW_FROM_QUERY¶
説明
ストアドプロシージャ GENERATE_VQL_TO_CREATE_JDBC_BASE_VIEW_FROM_QUERY
は、JDBC データソースの基盤となるデータベースに対して実行される、指定した SQL 文の JDBC 基本ビューの作成に必要な VQL ステートメントを返します。このプロシージャは、実際には基本ビューを作成せず、そのための VQL ステートメントを返すだけであることに注意してください。
GET_JDBC_DATASOURCE_TABLES プロシージャと組み合わせることで、ソースデータベースのすべてのテーブル/ビュー用の基本ビューを作成するプロセスを自動化できます。
このプロシージャは、基本ビューを作成せず、そのための VQL ステートメントを返すだけです。
他のタイプのデータソース (DF、XML、JSON など) に対する基本ビューを作成する VQL ステートメントを取得するには、DenodoConnect コンポーネントの Denodo VQL Generation を使用します。これはサポートサイトで入手可能です。そのドキュメントについては、 Denodo Community を参照してください。
構文
GENERATE_VQL_TO_CREATE_JDBC_BASE_VIEW_FROM_QUERY (
data_source_name : text
, sql_sentence : text
, interpolation_vars : array
, base_view_name : text
, folder : text
, i18n : text
, database_name : text
)
data_source_name
: データソースの名前。sql_sentence
: 実行する SQL クエリ。クエリの構文の詳細については、「 SQL クエリからの基本ビューの作成 」のセクションを参照してください。interpolation_vars
: レジスターとクエリ補間変数の値の配列 (「 補間変数によるパスなどの値 」のセクションを参照)。クエリで変数を使用しない場合は、null
に設定するか、空白のままにします。各レジスターには以下のフィールドがあります。補間変数の名前。
指定した補間変数の値。
base_view_name
: 作成される基本ビューの名前。null
の場合、名前は自動生成されます。folder
: 作成された基本ビューを配置するフォルダ。結果には、このフォルダを作成するための VQL ステートメントが含まれます。null
の場合、VQL でフォルダは指定されません。i18n
: 作成される基本ビューのロケール。null
の場合、プロシージャはデータソースが属する Virtual DataPort データベースのロケールを割り当てます。null
に設定することをお勧めします。database_name
: JDBC データソースが属するデータベースの名前。null
の場合、プロシージャは現在のデータベースを使用します。
このプロシージャは、基本ビューを作成するために必要な VQL ステートメントごとに 1 つの行を返します。
creation_vql
: 望みどおりの基本ビューを作成するために必要なステートメント。
スキーマ、カタログ、またはテーブルがデータベースに存在しない場合、このプロシージャはエラーを返します。
必要な権限
ユーザーには、データソースに対する実行権限が必要です。
例
例 1
CALL GENERATE_VQL_TO_CREATE_JDBC_BASE_VIEW_FROM_QUERY (
'ds_mydatasource'
, 'SELECT * FROM vdp.emp'
, null
, 'base_view_emp')
これは、ビュー「base_view_emp」を作成するための VQL と、「SELECT * FROM vdp.emp」を「ds_mydatasource」の基盤となるデータベースに対して実行して得られる結果を返します。
例 2
CALL GENERATE_VQL_TO_CREATE_JDBC_BASE_VIEW_FROM_QUERY (
'ds_mydatasource'
, 'SELECT * FROM emp WHERE empno > @{in_empno} AND depnto > @{in_deptno}'
, {
ROW('in_empno', 1000),
ROW('in_deptno', 10)
}
, 'base_view_emp_vars')
);
前述の例と同じ処理を行いますが、SQL クエリで補間変数を使用しています。