SHOW USER PROCEDURES¶
アクセス権限を持つすべてのユーザー定義プロシージャをリストします。このコマンドを使用して、指定したデータベースまたはスキーマ(またはセッションの現在のデータベース/スキーマ)、アプリケーション、またはアカウント全体のユーザー定義プロシージャをリストします。
組み込みプロシージャとユーザー定義プロシージャの両方を含む、すべてのプロシージャをリストするコマンドについては、 SHOW PROCEDURES をご参照ください。
- こちらもご参照ください。
SHOW PROCEDURES、 PROCEDURES ビュー (Information Schema)、 PROCEDURES ビュー (Account Usage)、 SHOW USER PROCEDURES
構文¶
SHOW USER PROCEDURES [ LIKE '<pattern>' ]
[ IN
{
ACCOUNT |
DATABASE |
DATABASE <database_name> |
SCHEMA |
SCHEMA <schema_name> |
<schema_name>
APPLICATION <application_name> |
APPLICATION PACKAGE <application_package_name> |
}
]
パラメーター¶
LIKE 'pattern'オプションで、オブジェクト名でコマンド出力をフィルタリングします。フィルターは、 SQL ワイルドカード文字(
%および_)をサポートする、 大文字と小文字を区別しない パターンマッチングを使用します。たとえば、次のパターンは 同じ 結果を返します。
... LIKE '%testing%' ...... LIKE '%TESTING%' .... デフォルト: 値なし(フィルタリングは出力に非適用)。
[ IN ... ]オプションで、コマンドのスコープを指定します。次のいずれかを指定します。
ACCOUNTアカウント全体の記録を返します。
DATABASE、 .DATABASE db_name現在使用中のデータベースまたは指定されたデータベース(
db_name)の記録を返します。db_nameなしでDATABASEを指定し、かつデータベースが使用されていない場合、キーワードは出力に影響しません。注釈
データベースコンテキストで
IN句を指定せずに SHOW コマンドを使用すると、予想よりも少ない結果になる可能性があります。IN句を使用しない場合、同じ名前のオブジェクトは一度だけ表示されます。例えば、schema1にテーブルt1、そしてschema2にテーブルt1があり、両方とも指定したデータベースコンテキストのスコープ内にある場合(つまり、選択したデータベースがschema1とschema2の親である場合)の場合、 SHOW TABLES はt1テーブルの1つのみを表示します。SCHEMA、 .SCHEMA schema_name現在使用中のスキーマまたは指定されたスキーマ(
schema_name)の記録を返します。データベースが使用中の場合、または完全修飾
schema_name(例:db.schema) を指定する場合、SCHEMAはオプションです。データベースが使用されていない場合は、
SCHEMAを指定しても出力には影響しません。
APPLICATION application_name、 .APPLICATION PACKAGE application_package_name名前付き Snowflake Native App またはアプリケーションパッケージの記録を返します。
IN ...を省略した場合、コマンドのスコープは、セッションで現在使用中のデータベースがあるかどうかによって異なります。データベースが現在使用中の場合、コマンドはデータベースで表示する権限を持つオブジェクトを返します。これは、
IN DATABASEを指定するのと同じ効果があります。データベースが現在使用中でない場合、コマンドはアカウントで表示する権限を持つオブジェクトを返します。これは、
IN ACCOUNTを指定するのと同じ効果があります。
出力¶
コマンド出力には、ユーザープロシージャのプロパティとメタデータが以下の列でリストされます。
列 |
説明 |
|---|---|
|
プロシージャが作成されたタイムスタンプ。 |
|
プロシージャの名前。 |
|
プロシージャが存在するスキーマの名前。 |
|
プロシージャが組み込まれている場合は |
|
現在は該当しません。 |
|
現在は該当しません。 |
|
プロシージャへの引数の最小数。 |
|
プロシージャへの引数の最大数。 |
|
引数および戻り値のデータ型。Snowflakeスクリプトストアドプロシージャ <label-stored_procedure_snowscript_arguments>`の場合、``OUT` は出力引数に表示されます。 |
|
プロシージャの説明。 |
|
プロシージャが存在するデータベース名。 |
|
プロシージャがテーブルを返す場合は |
|
プロシージャが CLUSTER BY 式で使用できる場合は |
|
プロシージャがセキュアプロシージャの場合は |
|
プロシージャの SECRETS パラメーターで指定された シークレット 値のマッピング。マップキーはシークレット変数名で、マップ値はシークレットオブジェクト名です。 |
|
プロシージャの EXTERNAL_ACCESS_INTEGRATION パラメーターで指定された 外部アクセス統合 の名前。 |
使用上の注意¶
このコマンドの実行には、稼働中のウェアハウスは必要ありません。
このコマンドは、現在のユーザーの現在のロールに少なくとも1つのアクセス権限が付与されているオブジェクトのみを返します。
MANAGE GRANTS アクセス権限により、所有者はアカウント内のすべてのオブジェクトを暗黙的に参照できます。デフォルトでは、アカウント管理者( ACCOUNTADMIN ロールを持つユーザー)とセキュリティ管理者( SECURITYADMIN ロールを持つユーザー)のみが MANAGE GRANTS 権限を持っています。
このコマンドの出力を後処理するには、 パイプ演算子 (
->>)または RESULT_SCAN 関数。どちらのコンストラクトも、出力を クエリできる結果セットとして扱います。このコマンドの出力列名は小文字で生成されます。パイプ演算子または でこのコマンドの結果セットを消費する場合 RESULT_SCAN 関数の場合は、を使用します 二重引用符で囲まれた識別子 クエリの列名に を使用し、スキャンされた出力の列名と一致するようにします。たとえば、出力列の名前が次の場合
type``次に を指定します ``"type"識別子用。
コマンドは、コマンドを実行するために使用されるロールのアクセス権限によって決定された通り、指定されたオブジェクトタイプに対して 最大 1万件の記録を返します。1万件を超える記録は、フィルターを適用しても返されません。
1万件を超える記録が存在する結果を表示するには、 Snowflake Information Schema で対応するビュー(存在する場合)をクエリします。
例¶
現在のスキーマで、名前が GET_ で始まる、表示権限のあるプロシージャを表示します。
SHOW USER PROCEDURES LIKE 'GET_%' IN SCHEMA;-------------------------------+-----------------+-------------+------------+--------------+---------+-------------------+-------------------+---------------------------------------+------------------------+--------------+-------------------+----------------------+-----------+---------+------------------------------+ created_on | name | schema_name | is_builtin | is_aggregate | is_ansi | min_num_arguments | max_num_arguments | arguments | description | catalog_name | is_table_function | valid_for_clustering | is_secure | secrets | external_access_integrations | -------------------------------+-----------------+-------------+------------+--------------+---------+-------------------+-------------------+---------------------------------------+------------------------+--------------+-------------------+----------------------+-----------+---------+------------------------------+ 2023-01-27 15:01:13.862 -0800 | GET_FILE | PUBLIC | N | N | N | 1 | 1 | GET_FILE(VARCHAR) RETURN VARCHAR | user-defined procedure | BOOKS_DB | N | N | N | | | 2023-03-23 10:38:10.423 -0700 | GET_NUM_RESULTS | PUBLIC | N | N | N | 1 | 1 | GET_NUM_RESULTS(VARCHAR) RETURN FLOAT | user-defined procedure | BOOKS_DB | N | N | N | | | 2023-03-23 09:47:55.840 -0700 | GET_RESULTS | PUBLIC | N | N | N | 1 | 1 | GET_RESULTS(VARCHAR) RETURN TABLE () | user-defined procedure | BOOKS_DB | Y | N | N | | | -------------------------------+-----------------+-------------+------------+--------------+---------+-------------------+-------------------+---------------------------------------+------------------------+--------------+-------------------+----------------------+-----------+---------+------------------------------+