SHOW DATABASE ROLES

Listet alle Datenbankrollen einer angegebenen Datenbank auf.

Wichtig

Ein Benutzer mit einer beliebigen aktiven Rolle, dem eine beliebige Berechtigung für die aktive Datenbank erteilt wurden (z. B. USAGE), kann die Datenbankrollen der Datenbank auflisten. Dies bedeutet jedoch nicht zwangsläufig, dass die Rolle es den Benutzern erlaubt, die Datenbankrollen zu verwenden, um SQL-Aktionen auszuführen. Um eine Datenbankrolle zu verwenden, muss sie zunächst einer Kontorolle zugewiesen werden, die ein Benutzer in einer Benutzersitzung aktivieren kann, oder einer Kontorolle, die in einer Hierarchie niedriger angesiedelt ist.

Dies ist Teil der besitzerverwaltete Zugriffssteuerung und der rollenbasierten Zugriffssteuerung. Weitere Informationen dazu finden Sie unter Übersicht zur Zugriffssteuerung.

Siehe auch:

SHOW GRANTS, CREATE DATABASE ROLE, ALTER DATABASE ROLE, DROP DATABASE ROLE

Syntax

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

Erforderliche Parameter

name

Gibt den Namen der Datenbank an.

Der Befehl gibt einen Fehler zurück, wenn Sie den Bezeichner für den Namen nicht angeben.

Optionale Parameter

LIMIT rows [ FROM 'name_string' ]

Schränkt optional die maximale Anzahl der zurückgegebenen Zeilen ein und ermöglicht gleichzeitig die „Paginierung“ der Ergebnisse. Die tatsächliche Anzahl der zurückgegebenen Zeilen kann geringer sein als das angegebene Limit. Beispielsweise ist die Anzahl der vorhandenen Objekte geringer als das angegebene Limit.

Die optionale Unterklausel FROM 'name_string' dient als „Cursor“ für die Ergebnisse. Dies ermöglicht das Abrufen der angegebenen Anzahl von Zeilen nach der ersten Zeile, deren Objektname mit der angegebenen Zeichenfolge übereinstimmt:

  • Die Zeichenfolge muss in einfache Anführungszeichen gesetzt werden, wobei zwischen Groß-/Kleinschreibung unterschieden wird.

  • Die Zeichenfolge muss nicht den vollständigen Datenbanknamen enthalten. Partielle Namen werden unterstützt.

Standard: Kein Wert (die Ausgabe wird nicht begrenzt)

Bemerkung

Bei SHOW-Befehlen, die sowohl die FROM 'name_string'- als auch die STARTS WITH 'name_string'-Klausel unterstützen, können Sie diese beiden Klauseln in derselben Anweisung kombinieren. Beide Bedingungen müssen jedoch erfüllt sein, da sie sich sonst gegenseitig aufheben und keine Ergebnisse zurückgegeben werden.

Außerdem werden Objekte in lexikographischer Reihenfolge nach Namen zurückgegeben. Daher gibt FROM 'name_string' nur Zeilen mit einem höheren lexikografischen Wert zurück als die von STARTS WITH 'name_string' zurückgegebenen Zeilen.

Beispiel:

  • ... STARTS WITH 'A' LIMIT ... FROM 'B' würde keine Ergebnisse zurückgeben.

  • ... STARTS WITH 'B' LIMIT ... FROM 'A' würde keine Ergebnisse zurückgeben.

  • ... STARTS WITH 'A' LIMIT ... FROM 'AB' würde Ergebnisse zurückgeben (wenn Zeilen mit den Eingabezeichenfolgen übereinstimmen).

Nutzungshinweise

  • Dieser Befehl unterstützt nur die Anzeige von Datenbankrollen in einer bestimmten Datenbank.

    Sie können diesen Befehl nicht verwenden, um alle Datenbankrollen eines Kontos anzuzeigen.

  • Für die Ausführung des Befehls ist kein aktives Warehouse erforderlich.

  • Um die Ausgabe dieses Befehls nachzubearbeiten, können Sie die Funktion RESULT_SCAN verwenden, die die Ausgabe wie eine abfragbare Tabelle behandelt.

Beispiel

Geben Sie bis zu zehn Datenbankrollen in der Datenbank namens mydb nach der ersten Datenbankrolle namens db_role2 zurück:

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