Kategorien:

DDL für Datenbanken, Schemas und Freigaben

SHOW SCHEMAS

Listet die Schemas auf, für die Sie Zugriffsrechte haben, einschließlich entfernter Schemas, die sich noch innerhalb der Aufbewahrungsfrist für Time Travel befinden und daher nicht entfernt werden können. Mit dem Befehl können Sie Schemata für die aktuelle/angegebene Datenbank oder für Ihr gesamtes Konto auflisten.

Die Ausgabe gibt Schemametadaten und -eigenschaften zurück, die lexikographisch nach Datenbank- und Schemanamen geordnet sind. Dies ist wichtig zu beachten, wenn Sie die Ergebnisse mit den bereitgestellten Filtern filtern möchten.

Siehe auch:

CREATE SCHEMA, DROP SCHEMA, UNDROP SCHEMA

SCHEMATA-Ansicht (Information Schema)

Syntax

SHOW [ TERSE ] SCHEMAS [ HISTORY ] [ LIKE '<pattern>' ]
                                   [ IN { ACCOUNT | DATABASE [ <db_name> ] } ]
                                   [ STARTS WITH '<name_string>' ]
                                   [ LIMIT <rows> [ FROM '<name_string>' ] ]

Parameter

TERSE

Gibt eine Ausgabe zurück, die nur die folgenden Spalten enthält:

  • created_on

  • name

  • kind

  • database_name

  • schema_name

Beachten Sie, dass kind und schema_name immer NULL anzeigen, da kind nicht für Schemas gilt und schema_name bei name überflüssig ist.

Standard: Kein Wert (alle Spalten sind in der Ausgabe enthalten)

HISTORY

Umfasst entfernte Schemata, die noch nicht gelöscht wurden (d. h. sie befinden sich noch innerhalb ihrer jeweiligen Aufbewahrungsfristen für Time Travel). Wenn mehrere Versionen eines gelöschten Schemas vorhanden sind, zeigt die Ausgabe für jede Version eine Zeile an. Die Ausgabe enthält außerdem eine zusätzliche dropped_on-Spalte, die Folgendes anzeigt:

  • Datums- und Zeitstempel (für gelöschte Schemas)

  • NULL (für aktive Schemas).

Kein Wert (gelöschte Schemas sind nicht in der Ausgabe enthalten)

LIKE 'Muster'

Filtert die Befehlsausgabe nach dem Objektnamen. Der Filter verwendet einen Musterabgleich ohne Berücksichtigung der Groß-/Kleinschreibung, aber mit Unterstützung von SQL-Platzhalterzeichen (% und _).

Die folgenden Muster geben beispielsweise die gleichen Ergebnisse zurück:

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...

Standard: Kein Wert (die Ausgabe wird nicht gefiltert)

IN ACCOUNT | [ DATABASE ] Datenbankname

Gibt den Bereich des Befehls an, mit dem festgelegt wird, ob der Befehl Datensätze nur für die aktuelle/angegebene Datenbank oder für Ihr gesamtes Konto auflistet.

Das Schlüsselwort DATABASE ist nicht erforderlich. Sie können den Gültigkeitsbereich festlegen, indem Sie nur den Datenbanknamen angeben. Ebenso ist der Datenbankname nicht erforderlich, wenn für die Sitzung derzeit eine Datenbank verwendet wird.

Standard: Abhängig davon, ob für die Sitzung aktuell eine Datenbank verwendet wird:

  • Datenbank: DATABASE ist der Standardwert (d. h. der Befehl gibt die Objekte zurück, für die Sie Berechtigungen zum Anzeigen in der Datenbank haben).

  • Keine Datenbank: ACCOUNT ist die Standardeinstellung (d. h. der Befehl gibt die Objekte zurück, für die Sie Berechtigungen zum Anzeigen in Ihrem Konto haben).

STARTS WITH 'Namenszeichenfolge'

Filtert die Befehlsausgabe optional anhand der Zeichen, die am Anfang des Objektnamens angezeigt werden. Die Zeichenfolge muss in einfache Anführungszeichen gesetzt werden, wobei die Groß-/Kleinschreibung beachtet werden muss. Zum Beispiel werden bei Folgendem unterschiedliche Ergebnisse zurückgegeben:

... STARTS WITH 'B' ...
... STARTS WITH 'b' ...

Standard: Kein Wert (die Ausgabe wird nicht gefiltert)

LIMIT Zeilen [ FROM 'Namenszeichenfolge' ]

Schränkt optional die maximale Anzahl der zurückgegebenen Zeilen ein und ermöglicht gleichzeitig das „Ausblenden“ der Ergebnisse. Beachten Sie, dass die tatsächliche Anzahl der zurückgegebenen Zeilen möglicherweise unter dem angegebenen Grenzwert liegt (z. B. liegt die Anzahl der vorhandenen Objekte unter dem angegebenen Grenzwert).

Die optionale Unterklausel FROM 'Namenszeichenfolge' 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

Sowohl FROM 'Namenszeichenfolge' als auch STARTS WITH 'Namenszeichenfolge' können in derselben Anweisung kombiniert werden. Beide Bedingungen müssen jedoch erfüllt sein, oder sie heben sich gegenseitig auf und es werden keine Ergebnisse zurückgegeben.

Außerdem werden Objekte in lexikographischer Reihenfolge nach Namen zurückgegeben. Daher gibt FROM 'Namenszeichenfolge' nur Zeilen mit einem höheren lexikografischen Wert zurück als die von STARTS WITH 'Namenszeichenfolge' 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

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

  • Der Wert für LIMIT Zeilen darf 10000 nicht überschreiten. Wenn LIMIT Zeilen nicht angegeben wird und das Resultset mehr als 10.000 Zeilen hat, führt der Befehl zu einem Fehler.

    Um Ergebnisse anzuzeigen, für die mehr als 10.000 Datensätze vorhanden sind, fügen Sie entweder LIMIT Zeilen ein, oder fragen Sie die entsprechende Ansicht im Information Schema ab.

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

Beispiele

Zeigen Sie alle Schemas in der aktuellen Datenbank mytestdb an, für die Sie die Berechtigung zum Anzeigen haben:

SHOW SCHEMAS;

+---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+
| created_on                      | name               | is_default | is_current | database_name | owner  | comment                                                   | options | retention_time |
|---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------|
| Fri, 13 May 2016 17:58:37 -0700 | INFORMATION_SCHEMA | N          | N          | MYTESTDB      |        | Views describing the contents of schemas in this database |         |              1 |
| Wed, 25 Feb 2015 16:16:54 -0800 | PUBLIC             | N          | Y          | MYTESTDB      | PUBLIC |                                                           |         |              1 |
+---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+

Zeigen Sie alle Schemas in der aktuellen Datenbank mytestdb an, für die Sie die Berechtigung zum Anzeigen haben, einschließlich gelöschter Schemas (dieses Beispiel baut auf den DROP SCHEMA-Beispielen auf):

SHOW SCHEMAS HISTORY;

+---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+---------------------------------+
| created_on                      | name               | is_default | is_current | database_name | owner  | comment                                                   | options | retention_time | dropped_on                      |
|---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+---------------------------------|
| Fri, 13 May 2016 17:59:50 -0700 | INFORMATION_SCHEMA | N          | N          | MYTESTDB      |        | Views describing the contents of schemas in this database |         |              1 | NULL                            |
| Wed, 25 Feb 2015 16:16:54 -0800 | PUBLIC             | N          | Y          | MYTESTDB      | PUBLIC |                                                           |         |              1 | NULL                            |
| Tue, 17 Mar 2015 16:42:29 -0700 | MYSCHEMA           | N          | N          | MYTESTDB      | PUBLIC |                                                           |         |              1 | Fri, 13 May 2016 17:25:32 -0700 |
+---------------------------------+--------------------+------------+------------+---------------+--------+-----------------------------------------------------------+---------+----------------+---------------------------------+