GET_ELEMENTS¶
説明
ストアドプロシージャ GET_ELEMENTS は、任意のエレメント (データソース、ビュー、Web サービスなど) に関する情報を返します。複数のパラメータ (エレメント名、タイプなど) で結果をフィルタできます。
各行は、1 つのエレメントを表します。
ビューに関する情報を取得する場合は、プロシージャ GET_VIEWS を使用することをお勧めします。その方がより詳しい情報が提供されるためです。
構文
GET_ELEMENTS (
input_database_name : text
, input_name : text
, input_type : element type
, input_user_creator : text
, input_last_user_modifier : text
, input_init_create_date : date
, input_end_create_date : date
, input_init_last_modification_date : date
, input_end_last_modification_date : date
, input_description : text
)
<element type> ::=
NULL
| 'Folders'
| 'DataSources'
| 'StoredProcedures'
| 'Wrappers'
| 'Views'
| 'WebServices'
| 'Associations'
| 'JMSListeners'
| 'GlobalSecurityPolicies'
| 'Tags'
このプロシージャを
CALLで呼び出し、パラメータでフィルタしない場合は、nullを渡します。このプロシージャは、AND 条件を使用して入力パラメータを評価します。たとえば、
input_database_name、input_name、およびinput_descriptionに値を渡すと、このプロシージャは、このデータベース かつ この名前の、 かつ この説明を含むエレメントを検索して返します。このプロシージャは、等号の代わりに LIKE 演算子を使用して以下のパラメータを評価します。
input_name
input_user_creator
input_last_user_modifier
input_description
つまり、これらのパラメータの値では、LIKE とともに使用するワイルドカード演算子 (
%と_) を使用できます。説明による検索では大文字と小文字は区別されません。input_init_create_dateおよびinput_end_create_date、またはinput_init_last_modification_dateおよびinput_end_last_modification_dateの値を指定した場合、このプロシージャはこれら 2 つの期間に作成されたエレメントを返します。たとえば、input_init_create_dateおよびinput_end_create_dateの値を指定した場合、このプロシージャはこの 2 つの日付の間に作成されたエレメントを返します。input_init_create_dateがnullの場合、このプロシージャはinput_end_create_dateより前に作成されたすべてのエレメントを返します。input_end_create_dateがnullの場合、このプロシージャはinput_init_create_dateより後に作成されたすべてのエレメントを返します。input_init_last_modification_dateおよびinput_end_last_modification_dateで検索する場合も同じように機能します。
このプロシージャは、以下のフィールドを返します。
database_name: エレメントが属すデータベースの名前。name: エレメントの名前。type: エレメントのタイプ。値は以下のとおりです。associationdatasourcefolderstoredProceduretypeviewwebServicewrapper
subtype: エレメントのサブタイプ、またはエレメントにサブタイプがない場合は空の文字列。サブタイプがあるエレメント、およびそれらのサブタイプは以下のとおりです。view:base、derived、interface、またはmaterializeddatasource:custom、df、essbase、jdbc、json、ldap、mongodb、odbc、olap、salesforce、sapbwbapi、saperp、ws、またはxmlwrapper:custom、df、essbase、html、jdbc、json、ldap、mongodb、odbc、olap、salesforce、sapbwbapi、saperp、ws、またはxmlstoredProcedure:user defined、user defined - vql
user_creator: エレメントの所有者。last_user_modifier: エレメントを最後に変更したユーザー。エレメントが一度も変更されていない場合、この値はuser_creatorと同じです。create_date: エレメントが作成された日付。last_modification_date: エレメントが最後に変更された日付。エレメントが一度も変更されていない場合、この値はcreate_dateと同じです。description: エレメントの説明folder: エレメントのフォルダ (小文字)。エレメントがフォルダに格納されていない場合、この値は/です。base_view_type: 基本ビューのラッパーサブタイプ、またはエレメントが基本ビューではない場合はnull。有効なサブタイプは、custom、df、essbase、html、jdbc、json、ldap、mongodb、odbc、olap、salesforce、sapbwbapi、saperp、ws、またはxmlです。
必要な権限
このプロシージャの結果は、それを実行するユーザーに付与されている権限によって異なります。ユーザーが管理者ユーザーではない場合、以下の点に注意してください。
パラメータ
input_database_nameがnullではない場合、ユーザーがこのデータベースに対する CONNECT 権限を持っていないと、このプロシージャはエラーを返します。このプロシージャは、ユーザーが
METADATA権限を持っているエレメントに関する情報のみを返します。
例
例 1
SELECT *
FROM GET_ELEMENTS()
WHERE input_database_name = 'customer_report' AND folder = '/base views'
データベース「customer_report」の特定のフォルダ内にあるすべてのエレメントを取得します。 folder はこのプロシージャの入力パラメータではありません。このため、実行エンジンは、パラメータ input_database_name を渡してこのプロシージャを実行します。返される結果は、そのデータベース内のすべてのエレメントに関する情報です。次に、実行エンジンはこの結果をフィルタして、「base views」という名前のフォルダのみを返します。
例 2
SELECT *
FROM GET_ELEMENTS()
WHERE
input_database_name = 'customer_report'
AND (input_init_create_date = ADDDAY(CURRENT_DATE, -1));
昨日の午前 0 時以降に作成されたデータベース「customer_report」のすべてのエレメントを取得します。
例 3
SELECT *
FROM GET_ELEMENTS()
WHERE input_type = 'views' AND input_description = '%report%';
このクエリは、説明に「report」という単語が含まれているすべてのビューを返します。
