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'
| 'Widgets'
| '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
: エレメントのタイプ。値は以下のとおりです。association
datasource
folder
storedProcedure
type
view
webService
widget
wrapper
subtype
: エレメントのサブタイプ、またはエレメントにサブタイプがない場合は空の文字列。サブタイプがあるエレメント、およびそれらのサブタイプは以下のとおりです。view
:base
、derived
、interface
、またはmaterialized
datasource
:custom
、df
、essbase
、jdbc
、json
、ldap
、odbc
、olap
、salesforce
、sapbwbapi
、saperp
、ws
、またはxml
wrapper
:custom
、df
、essbase
、html
、jdbc
、json
、ldap
、odbc
、olap
、salesforce
、sapbwbapi
、saperp
、ws
、またはxml
storedProcedure
: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
、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」という単語が含まれているすべてのビューを返します。