GET_CATALOG_METADATA_WS¶
説明
ストアドプロシージャ GET_CATALOG_METADATA_WS は、Denodo で作成された Web サービスに関する情報を返します。
構文
GET_CATALOG_METADATA_WS (
input_database_name : text
, input_ws_name : text
)
input_database_nameおよびinput_ws_nameがnullの場合、このプロシージャはすべてのデータベースのすべての Web サービスに関する情報を返します。input_ws_nameがnullの場合、このプロシージャはそのデータベースのすべての Web サービスに関する情報を返します。
REST Web サービスの場合、このプロシージャは、ビューごとに 1 つの行を返します。SOAP Web サービスの場合、このプロシージャは、各操作の入力パラメータごとに 1 つの行、および出力パラメータごとに 1 つの行を返します。
このプロシージャは、これらのフィールドのそれぞれについて 1 つの行を返します。
database_name: Web サービスのデータベースの名前。ws_name: Web サービスの名前。operation_name: SOAP Web サービスの場合は操作の名前。REST Web サービスの場合はビューの名前。ws_type: エレメントのタイプ。値は以下のとおりです。RESTSOAP<empty>(Denodo 4.7 以前のバージョンで作成された Web サービス)
column_name: フィールドの名前。column_type_name: フィールドの型。input:SOAP Web サービス: 入力パラメータの場合は
true、出力パラメータの場合はfalse。REST Web サービス:
true(デフォルト)。フィールドが [Remove from output] オプションで [No searchable] として指定された場合はfalseです。
output:SOAP Web サービス: 入力パラメータの場合は
false、出力パラメータの場合はtrue。REST Web サービス:
true(デフォルト)。フィールドが [Remove from output] オプションで [Do not output] として指定されている場合はfalseです。
mandatory: 必須の入力パラメータの場合はtrue、それ以外または出力パラメータの場合はfalse。operator: SOAP Web サービスの入力パラメータの場合はこのパラメータの演算子。それ以外のフィールドの場合はnullです。visibility: 操作のタイプ。SOAP Web サービスの場合:
1: パラメータがクエリ操作に属す場合。10: パラメータが INSERT 操作に属す場合。11: パラメータが UPDATE 操作に属す場合。12: パラメータが DELETE 操作に属す場合。
REST Web サービスの場合、値は常に
1です。
is_fetch: この行が、取得する行数を示す SOAP Web サービスの入力パラメータを表す場合はtrue。これは、Administration Tool の [Add pagination] オプションで追加されるフィールドです。それ以外の場合はfalseです。is_offset: この行が、結果セットのスキップする行数を示す SOAP Web サービスの入力パラメータを表す場合はtrue。これは、Administration Tool の [Add pagination] オプションで追加されるフィールドです。それ以外の場合はfalseです。is_order_by: この行が、サービスによって返される結果の順番を指定する SOAP Web サービスの入力パラメータを表す場合はtrue。これは、Administration Tool の [Add order by] オプションで追加されるフィールドです。それ以外の場合はfalseです。schema_database: 公開されるエレメントが存在するデータベースの名前。schema_name: 公開されるビューの名前。SOAP Web サービスの場合、これは Denodo ストアドプロシージャの名前でもある場合があります。schema_type: 公開されるエレメントのタイプ。想定される値は以下のとおりです。viewstoredProcedure(SOAP Web サービスの場合のみ)
注意
このプロシージャは、 input_database_name または input_ws_name が存在しない場合は結果を何も返しません。
必要な権限
このプロシージャの結果は、それを実行するユーザーに付与されている権限によって異なります。
管理者、およびロール
serveradminを持つユーザーは、すべての Web サービスに関する情報を取得できます。ユーザーがデータベースの管理者の場合、このプロシージャはそのデータベースのすべてのサービスに関する情報を返します。
このプロシージャは、ユーザーが METADATA 権限を持っている Web サービスに関する情報のみを返します。
このプロシージャは、必要な権限がユーザーにないために失敗することはありません。
例
例 1
SELECT DISTINCT database_name, ws_name
FROM GET_CATALOG_METADATA_WS()
WHERE ws_type = 'SOAP';
すべてのデータベースの SOAP Web サービスを返します。 ws_type はこのプロシージャの入力パラメータではないため、実行エンジンはこのプロシージャを実行してから、タイプが「SOAP」ではないサービスをフィルタします。
例 2
SELECT *
FROM GET_CATALOG_METADATA_WS('customer_report', 'customer_ws');
データベース「customer_report」の Web サービス「customer_ws」の情報を取得します。ユーザーにこの Web サービスに対する METADATA 権限が付与されていない場合、このプロシージャは行を返しません。
例 3
SELECT DISTINCT database_name, ws_name, ws_type
FROM GET_CATALOG_METADATA_WS()
WHERE
schema_database = 'customer_report' AND schema_name = 'customer' AND schema_type = 'view';
このクエリは、データベース「customer_report」のビュー「customer」を公開するすべての Web サービスを返します。
