SHOW DATABASE ROLES

指定したデータベース内のすべてのデータベースロールをリストします。

重要

アクティブなデータベースに対する権限(例: USAGE)が付与されたアクティブなロールを持つユーザーは、データベース内のデータベースロールをリストできます。ただし、これは、ユーザーによるデータベースロールを使用した SQL アクションの実行をロールが許可することを必ずしも意味するわけではありません。データベースロールを使用するには、まずそれをユーザーセッションでユーザーがアクティブ化できるアカウントロール、または階層内の下位のアカウントロールに付与する必要があります。

これは、随意アクセス制御およびロールベースアクセス制御の一部です。詳細については、 アクセス制御の概要 をご参照ください。

Tip

SQL 以外にも、 Snowflake REST APIs、 Snowflake Python APIs、 Snowflake CLI などのインターフェイスを使うことができます。代替インターフェイス をご参照ください。

こちらもご参照ください。

SHOW GRANTSCREATE DATABASE ROLEALTER DATABASE ROLEDROP DATABASE ROLE

構文

SHOW DATABASE ROLES IN DATABASE <name>
  [ LIMIT <rows> [ FROM '<name_string>' ] ]
Copy

必須パラメーター

name

データベースの名前を指定します。

名前識別子を指定しないと、コマンドはエラーを返します。

オプションのパラメーター

LIMIT rows [ FROM 'name_string' ]

オプションで、返される行の最大数を制限すると同時に、結果の「ページネーション」を有効にします。実際に返される行数は、指定された制限より少ない場合があります。例えば、既存のオブジェクトの数が指定された制限より少ないなどです。

オプションの FROM 'name_string' サブ句は、結果の「カーソル」として効果的に機能します。これにより、指定された文字列と一致するオブジェクト名を持つ最初の行に続く指定された行数を取得できます。

  • 文字列は一重引用符で囲む必要があり、 大文字と小文字を区別します

  • 文字列に完全なオブジェクト名を含める必要はありません。部分的な名前がサポートされています。

デフォルト:値なし(出力に制限は適用されない)

注釈

FROM 'name_string' 句と STARTS WITH 'name_string' 句の両方をサポートする SHOW コマンドの場合、同じステートメントでこれらの両方の句を組み合わせることができます。ただし、両方の条件を満たしている必要があります。そうでない場合、互いにキャンセルされ、結果が返されません。

さらに、オブジェクトは名前の辞書式順序で返されるため、 FROM 'name_string' は、 STARTS WITH 'name_string' によって返される行よりも辞書式の値が大きい行のみを返します。

例:

  • ... STARTS WITH 'A' LIMIT ... FROM 'B' は結果を返しません。

  • ... STARTS WITH 'B' LIMIT ... FROM 'A' は結果を返しません。

  • ... STARTS WITH 'A' LIMIT ... FROM 'AB' は結果を返します(入力文字列に一致する行がある場合)。

使用上の注意

  • このコマンドは特定のデータベース内にあるデータベースロールの表示のみをサポートします。

    このコマンドを使用してアカウントのデータベースロールを表示することはできません。

  • このコマンドの実行には、稼働中のウェアハウスは必要ありません。

  • このコマンドは、現在のユーザーの現在のロールに少なくとも1つのアクセス権限が付与されているオブジェクトのみを返します。

  • MANAGE GRANTS アクセス権限により、所有者はアカウント内のすべてのオブジェクトを暗黙的に参照できます。デフォルトでは、アカウント管理者( ACCOUNTADMIN ロールを持つユーザー)とセキュリティ管理者( SECURITYADMIN ロールを持つユーザー)のみが MANAGE GRANTS 権限を持っています。

  • このコマンドの出力を後処理するには、 パイプ演算子->>)または RESULT_SCAN 関数。どちらのコンストラクトも、出力を クエリできる結果セットとして扱います。

    このコマンドの出力列名は小文字で生成されます。パイプ演算子または でこのコマンドの結果セットを消費する場合 RESULT_SCAN 関数の場合は、を使用します 二重引用符で囲まれた識別子 クエリの列名に を使用し、スキャンされた出力の列名と一致するようにします。たとえば、出力列の名前が次の場合 type``次に を指定します ``"type" 識別子用。

db_role2 という最初のデータベースロールの後に、 mydb という名前のデータベースにあるデータベースロールを最大10個返します。

SHOW DATABASE ROLES IN DATABASE mydb LIMIT 10 FROM 'db_role2';
Copy

代替インターフェイス