Das Informationsschema ist ein integriertes Schema, das allen
PostgreSQL-Datenbank. Sie können SQL-Abfragen für Tabellen im information_schema
ausführen, um Schemametadaten für eine Datenbank abzurufen.
Mit der folgenden Abfrage etwa werden die Namen aller benutzerdefinierten Tabellen in einer Datenbank abgerufen:
SELECT
table_name
FROM
information_schema.tables
WHERE
table_schema = 'public'
Nutzung
information_schema
-Tabellen sind nur über SQL-Schnittstellen verfügbar, z. B.:- Mit der
executeQuery
API - Befehl
gcloud spanner databases execute-sql
- Die Seite Abfrage einer Datenbank in der Google Cloud Console
Andere Methoden für einzelne Leseaufrufe unterstützen
information_schema
nicht.- Mit der
- Abfragen für
information_schema
können starke Zeitstempelgrenzen, Zeitstempelgrenzen mit begrenzter Veralterung oder Zeitstempelgrenzen mit exakter Veralterung verwenden. - Wenn Sie eine GoogleSQL-Dialekt-Datenbank verwenden, lesen Sie den Abschnitt Informationsschema für GoogleSQL-Dialekt-Datenbanken.
Unterschiede zu information_schema
für PostgreSQL
Die Tabellen in information_schema
für PostgreSQL-Dialekt-Datenbanken enthalten Spalten aus
die Tabellen in der information_schema
für Open-Source-PostgreSQL und in
in einigen Fällen auch Spalten
aus Spanner enthalten. In diesen Tabellen
Open-Source-PostgreSQL-Spalten stehen an erster Stelle und werden in derselben Reihenfolge angeordnet
für eine Open-Source-
PostgreSQL-Datenbank und jede
Spanner wird anschließend angehängt. Abfragen, die für den
Die Open-Source-PostgreSQL-Version von information_schema
sollte funktionieren ohne
Änderungen bei der Verwendung von PostgreSQL-Dialekt-Datenbanken in der Google Cloud CLI.
Weitere wichtige Unterschiede beim information_schema
für PostgreSQL-Datenbanken:
- Einige der Tabellenspalten für Open-Source-PostgreSQL sind verfügbar, aber in PostgreSQL-Dialekt-Datenbanken nicht ausgefüllt.
- PostgreSQL-Dialekt-Datenbanken verwenden
public
als Standardschemanamen. - Automatisch generierte Einschränkungsnamen verwenden ein anderes Format als Open-Source-PostgreSQL-Datenbanken.
- Tabellen, die sich auf Open-Source-PostgreSQL-Features beziehen, die nicht werden in PostgreSQL-Dialekt-Datenbanken nicht unterstützt.
- Einige Tabellen, die in Spanner verfügbar sind, aber nicht
Open-Source-PostgreSQL, z. B.
database_options
,index_columns
,indexes
undspanner_statistics
sind verfügbar.
Zeilenfilter in information_schema
-Tabellen und ‑Ansichten
Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und
Hauptkonten, denen Zugriff auf das spanner_info_reader
-System gewährt wurde
Rolle (oder Mitglieder dieser Rolle) können alle
Zeilen in allen information_schema
-Tabellen und -Ansichten. Für andere Hauptkonten
Spanner filtert Zeilen basierend auf der aktuellen Datenbankrolle. Die
Tabellen- und Ansichtsbeschreibungen in den folgenden Abschnitten angeben, wie
Spanner filtert Zeilen für jede Tabelle und Ansicht.
Tabellen in information_schema
für PostgreSQL-Datenbanken
Die Tabellen und Ansichten in information_schema
sind mit den Tabellen kompatibel
und Ansichten in information_schema
von Open-Source-PostgreSQL.
In den folgenden Abschnitten werden die Tabellen und Ansichten in der Datei information_schema
beschrieben.
für PostgreSQL-Datenbanken.
applicable_roles
In dieser zeilenbasierten Ansicht sind alle Rollenmitgliedschaften aufgeführt, die allen Datenbankrollen explizit gewährt werden. Hauptkonten mit IAM auf Datenbankebene
Berechtigungen und Hauptkonten, denen Zugriff auf die
spanner_info_reader
-Systemrolle oder Mitglieder dieser Rolle können alle Zeilen in
diese Ansicht. Alle anderen Hauptkonten können nur die Rollenmitgliedschaften sehen, die
der aktuellen Datenbankrolle oder einer Rolle, von der die aktuelle Datenbank
Rolle ein Mitglied ist.
Da alle Datenbankrollen Mitglieder der öffentlichen Rolle sind, werden in den Ergebnissen Einträge für die implizite Mitgliedschaft in der öffentlichen Rolle ausgelassen.
Spaltenname | Typ | Beschreibung |
---|---|---|
grantee |
character varying |
Der Name der Datenbankrolle, der die Mitgliedschaft gewährt wird. |
role_name |
character varying |
Der Name der übergeordneten Datenbankrolle, in der diese Mitgliedschaft gewährt wird. |
is_grantable |
character varying |
Nicht verwendet. Immer NO . |
change_stream_columns
Diese zeilenfiltrierte Ansicht enthält Informationen zu Tabellenspalten und den Änderungsstreams, die sie beobachten. Jede Zeile enthält einen Änderungsstream und eine Spalte. Wenn ein Änderungsstream eine ganze Tabelle erfasst, werden die Spalten dieser Tabelle in dieser Ansicht nicht angezeigt.
Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die Systemrolle spanner_info_reader
oder auf Mitglieder dieser Rolle gewährt wurde, können alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptrollen können nur Zeilen für Änderungsstreams sehen, für die das SELECT
-Berechtigung der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
gewährt wurde.
Spaltenname | Typ | Beschreibung |
---|---|---|
change_stream_catalog |
character varying |
Der Datenbankname. |
change_stream_schema |
character varying |
Der Name des Schemas des Änderungsstreams. Für Datenbanken mit PostgreSQL-Dialekt ist die Standardeinstellung
ist public . |
change_stream_name |
character varying |
Der Name des Änderungsstreams. |
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas der Tabelle. Für Datenbanken mit PostgreSQL-Dialekt ist die Standardeinstellung
ist public . |
table_name |
character varying |
Der Name der Tabelle, auf die diese Zeile verweist. |
column_name |
character varying |
Der Name der Spalte, auf die sich diese Zeile bezieht. |
change_stream_options
Diese nach Zeilen gefilterte Ansicht enthält die Konfigurationsoptionen für Änderungsstreams.
Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, die
haben Zugriff auf die Systemrolle spanner_info_reader
oder Mitglieder erhalten
dieser Rolle alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Optionen für Änderungsstreams sehen, für die die Berechtigung SELECT
der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
gewährt wurde.
Spaltenname | Typ | Beschreibung |
---|---|---|
change_stream_catalog |
character varying |
Der Datenbankname. |
change_stream_schema |
character varying |
Der Name des Schemas des Änderungsstreams. Für Datenbanken mit PostgreSQL-Dialekt ist die Standardeinstellung
ist public . |
change_stream_name |
character varying |
Der Name des Änderungsstreams. |
option_name |
character varying |
Der Name der Änderungsstream-Option. |
option_type |
character varying |
Der Datentyp der Änderungsstream-Option. |
option_value |
character varying |
Der Wert der Option für den Änderungsstream. |
change_stream_privileges
In dieser nach Zeilen gefilterten Ansicht werden alle Berechtigungen für die detaillierte Zugriffssteuerung aufgelistet, die bei allen Änderungen gewährt wurden
Streams an eine beliebige Datenbankrolle, einschließlich public
. Hauptkonten mit
IAM-Berechtigungen und Hauptkonten, die auf Datenbankebene
Zugriff auf die Systemrolle spanner_info_reader
oder Mitgliedern dieser Rolle gewährt
Rolle alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Berechtigungen sehen, die für die aktuelle Datenbankrolle, für Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder für public
auf Änderungsstreams gewährt wurden.
Spaltenname | Typ | Beschreibung |
---|---|---|
grantor |
character varying |
Nicht verwendet. Immer NULL . |
grantee |
character varying |
Der Name der Datenbankrolle, der diese Berechtigung gewährt wird. |
change_stream_catalog |
character varying |
Der Datenbankname. |
change_stream_schema |
character varying |
Der Name des Schemas, das den Änderungsstream enthält.
Der Standardwert für PostgreSQL-Dialekt-Datenbanken ist public . |
change_stream_name |
character varying |
Der Name des Änderungsstreams. |
privilege_type |
character varying |
Die Art der Berechtigung (nur SELECT ). |
is_grantable |
character varying |
Nicht verwendet. Immer NO . |
change_stream_tables
Diese nach Zeilen gefilterte Ansicht enthält Informationen zu Tabellen und den Änderungsstreams
die sie beobachten. Jede Zeile enthält eine Tabelle und einen Änderungsstream. Hauptkonten
mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, die
Zugriff auf die Systemrolle spanner_info_reader
oder Mitgliedern dieser Rolle gewährt
Rolle alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Zeilen für
Änderungsstreams, für die dem aktuellen Nutzer die Berechtigung SELECT
gewährt wird
Datenbankrolle, auf Rollen, denen die aktuelle Datenbankrolle angehört, oder an
public
.
Die Daten in change_stream_tables
enthalten keine impliziten Beziehungen
zwischen Tabellen und Änderungsstreams,
die die gesamte Datenbank verfolgen.
Spaltenname | Typ | Beschreibung |
---|---|---|
change_stream_catalog |
character varying |
Der Datenbankname. |
change_stream_schema |
character varying |
Der Name des Schemas des Änderungsstreams. Für Datenbanken mit PostgreSQL-Dialekt ist die Standardeinstellung
ist public . |
change_stream_name |
character varying |
Der Name des Änderungsstreams, auf den sich diese Zeile bezieht. |
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas der Tabelle. Für Datenbanken mit PostgreSQL-Dialekt ist die Standardeinstellung
ist public . |
table_name |
character varying |
Der Name der Tabelle, auf die diese Zeile verweist. |
all_columns |
character varying |
YES , wenn der Änderungsstream dieser Zeile das gesamte
auf die sich diese Zeile bezieht. Andernfalls NO . Gemäß der
SQL-Standard verwenden, ist der String entweder YES oder NO ,
und nicht auf einen booleschen Wert. |
change_streams
Diese nach Zeilen gefilterte Ansicht listet alle Änderungsstreams einer Datenbank auf und gibt an, welche
bei denen die gesamte Datenbank im Vergleich zu bestimmten Tabellen oder Spalten erfasst wird. Hauptkonten
mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, die
Zugriff auf die Systemrolle spanner_info_reader
oder Mitgliedern dieser Rolle gewährt
Rolle alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Änderungen sehen
Streams, für die dem aktuellen Nutzer die Berechtigung SELECT
für die detaillierte Zugriffssteuerung gewährt wird
Datenbankrolle, auf Rollen, denen die aktuelle Datenbankrolle angehört, oder an
public
.
Spaltenname | Typ | Beschreibung |
---|---|---|
change_stream_catalog |
character varying |
Der Datenbankname. |
change_stream_schema |
character varying |
Der Name des Schemas dieses Änderungsstreams. Für Datenbanken mit PostgreSQL-Dialekt ist die Standardeinstellung
ist public . |
change_stream_name |
character varying |
Der Name des Änderungsstreams. |
all |
character varying |
YES , wenn dieser Änderungsstream die gesamte Datenbank verfolgt.
NO , wenn dieser Änderungsstream bestimmte Tabellen oder Spalten erfasst.
In Übereinstimmung mit dem SQL-Standard lautet der String entweder YES
oder NO anstelle eines booleschen Werts. |
check_constraints
Die Ansicht check_constraints
enthält eine Zeile für jede Prüfeinschränkung, die entweder durch das Schlüsselwort CHECK
oder NOT NULL
definiert ist.
Spaltenname | Typ | Beschreibung |
---|---|---|
constraint_catalog |
character varying |
Der Datenbankname. |
constraint_schema |
character varying |
Der Name des Schemas der Einschränkung. Der Standardwert ist public .
für PostgreSQL-Datenbanken. |
constraint_name |
character varying |
Der Name der Einschränkung. Wenn der Name der Einschränkung nicht explizit im Schema angegeben ist, wird der automatisch generierte Name verwendet. |
check_clause |
character varying |
Der Ausdruck der Prüfeinschränkung. |
spanner_state |
character varying |
Der aktuelle Status der Diagnoseeinschränkung. Folgende Status sind möglich:
|
column_column_usage
In dieser Ansicht werden alle generierten Spalten aufgelistet, die von einer anderen Basisspalte in in derselben Tabelle.
Spaltenname | Typ | Beschreibung |
---|---|---|
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die Tabelle enthält. Der Name lautet public für
das Standardschema und nicht leer für andere Schemas (z. B. das
information_schema selbst). Diese Spalte ist nie Null. |
table_name |
character varying |
Der Name der Tabelle, die die generierten Spalten enthält. |
column_name |
character varying |
Der Name der Basisspalte, von der die generierte Spalte abhängt. |
dependent_column |
character varying |
Der Name der generierten Spalte. |
column_options
In dieser Ansicht werden alle Optionen aufgelistet, die für die referenzierten Tabellenspalten einer Fremdschlüsseleinschränkung. Die Ansicht enthält nur die Spalten in der Referenz. Tabelle, auf die der aktuelle Nutzer Zugriff hat (als Eigentümer oder gewährte Person) Berechtigungen).
Spaltenname | Typ | Beschreibung |
---|---|---|
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die fremde Tabelle enthält. Der Name lautet
public für das Standardschema und nicht leer für andere Schemas (für
Beispiel, information_schema selbst). Diese Spalte ist nie Null. |
table_name |
character varying |
Der Name der fremden Tabelle. |
column_name |
character varying |
Der Name der Spalte. |
option_name |
character varying |
Eine SQL-Kennung, die die Option eindeutig identifiziert. Diese Kennung ist der Schlüssel der OPTIONS -Klausel in DDL.
|
option_value |
character varying |
Ein SQL-Literal, das den Wert dieser Option beschreibt. Der Wert dieser Spalte kann als Teil einer Abfrage analysiert werden. |
option_type |
character varying |
Ein Datentypname, der der Typ dieses Optionswerts ist. |
column_privileges
In dieser nach Zeilen gefilterten Ansicht werden alle Berechtigungen für die detaillierte Zugriffssteuerung aufgelistet, die für alle Spalten gewährt wurden
zu einer beliebigen Datenbankrolle, einschließlich public
. Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die Systemrolle spanner_info_reader
oder auf Mitglieder dieser Rolle gewährt wurde, können alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Berechtigungen sehen, die für Spalten gewährt wurden
die aktuelle Datenbankrolle zu den Rollen, von denen die aktuelle Datenbankrolle ein
Mitglied oder an public
.
Die Ansicht enthält die Berechtigungen SELECT
, INSERT
und UPDATE
, die vom
-Spalte wird von der Tabelle oder Ansicht übernommen, die die Spalte enthält.
Spaltenname | Typ | Beschreibung |
---|---|---|
grantor |
character varying |
Nicht verwendet. Immer NULL . |
grantee |
character varying |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die Tabelle oder Ansicht enthält. Die Standardeinstellung ist public für Datenbanken im PostgreSQL-Dialekt. |
table_name |
character varying |
Der Name der Tabelle oder Ansicht, die die Spalte enthält. |
column_name |
character varying |
Der Name der Spalte. |
privilege_type |
character varying |
Die Art der Berechtigung (SELECT ,
INSERT oder UPDATE ). |
is_grantable |
character varying |
Nicht verwendet. Immer NO . |
columns
Diese zeilenfiltrierte Ansicht enthält Informationen zu allen Tabellenspalten und Ansichtsspalten in der Datenbank. Hauptkonten mit IAM auf Datenbankebene
Berechtigungen und Hauptkonten, denen Zugriff auf die
spanner_info_reader
-Systemrolle oder Mitglieder dieser Rolle können alle Zeilen in
diese Ansicht. Alle anderen Prinzipale können nur Spalten sehen, für die der aktuellen Datenbankrolle oder Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
die Berechtigungen für die detaillierte Zugriffssteuerung oder die Berechtigungen SELECT
, INSERT
oder UPDATE
gewährt wurden.
Spaltenname | Typ | Beschreibung |
---|---|---|
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die Tabelle enthält. Der Name ist für das Standardschema public und für andere Schemas nicht leer (z. B. information_schema selbst). Diese Spalte ist nie
null. |
table_name |
character varying |
Der Name der Tabelle |
column_name |
character varying |
Der Name der Spalte |
ordinal_position |
BIGINT |
Die ordinale Position der Spalte in der Tabelle, beginnend mit dem Wert 1. |
column_default |
character varying |
Eine Stringdarstellung des Open-Source-PostgreSQL-Ausdrucks für den Standardwert der Spalte, z. B. '9'::bigint .
|
is_nullable |
character varying |
Ein String, der angibt, ob die Spalte Nullwerte enthalten kann. In
Gemäß SQL-Standard ist der String entweder YES oder
NO anstelle eines booleschen Werts. |
data_type |
character varying |
Der Datentyp der Spalte. Der Wert ist einer der folgenden:
|
character_maximum_length |
BIGINT |
Die deklarierte maximale Länge für Zeichen- und Bitstrings. Wenn
keine maximale Länge angegeben wurde, lautet der Wert NULL . Wenn der Datentyp der Spalte kein Zeichen- oder Bitstring ist, ist der Wert NULL . |
character_octet_length |
BIGINT |
Nicht verwendet. Der Wert ist immer NULL . |
numeric_precision |
BIGINT |
Die Genauigkeit des numerischen Datentyps der aktuellen Spalte.
Für double precision lautet der Wert 53. Für bigint lautet der Wert 64.
Für alle anderen Datentypen ist der Wert NULL . |
numeric_precision_radix |
BIGINT |
Die Basis (Einheit) der Genauigkeit für numerische Typen. Es werden nur zwei Werte unterstützt:
NULL . |
numeric_scale |
BIGINT |
Enthält die Skalierung des Spaltentyps „Numerisch“, also die Anzahl der
Precision-Basiseinheiten
nach dem Radixpunkt. Für bigint ist der Wert 0.
Bei allen anderen Datentypen lautet der Wert NULL . |
datetime_precision |
BIGINT |
Nicht verwendet. Der Wert ist immer NULL . |
interval_type |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
interval_precision |
BIGINT |
Nicht verwendet. Der Wert ist immer NULL . |
character_set_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
character_set_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
character_set_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
collation_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
collation_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
collation_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
domain_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
domain_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
domain_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
udt_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
udt_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
udt_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
scope_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
scope_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
scope_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
maximum_cardinality |
BIGINT |
Nicht verwendet. Der Wert ist immer NULL . |
dtd_identifier |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
is_self_referencing |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
is_identity |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
identity_generation |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
identity_start |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
identity_increment |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
identity_maximum |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
identity_minimum |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
identity_cycle |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
is_generated |
character varying |
Ein String, der angibt, ob die Spalte generiert wird. Der String ist entweder ALWAYS für eine generierte Spalte oder NEVER für eine nicht generierte Spalte. |
generation_expression |
character varying |
Ein String, der den SQL-Ausdruck einer generierten Spalte darstellt, oder NULL , wenn die Spalte keine generierte Spalte ist. |
is_updatable |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
spanner_type |
character varying |
Ein String, der den DDL-kompatiblen Typ der Spalte enthält. |
is_stored |
character varying |
Ein String, der angibt, ob die generierte Spalte gespeichert wird.
Bei generierten Spalten ist der String immer YES oder NO und für nicht generierte Spalten NULL . |
spanner_state |
character varying |
Der aktuelle Status der Spalte. Eine neue gespeicherte generierte Spalte, die einer vorhandenen Tabelle hinzugefügt wird, kann mehrere vom Nutzer beobachtbare Zustände durchlaufen, bevor sie vollständig verwendet werden kann. Folgende Werte sind möglich:
|
constraint_column_usage
Diese Ansicht enthält eine Zeile über jede Spalte, die von einer Einschränkung verwendet wird.
- Für
PRIMARY KEY
- undCHECK
-Einschränkungen, die durch das KeywordNOT NULL
definiert sind, enthält die Ansicht diese Spalten. - Für
CHECK
-Einschränkungen, die mit dem SuchbegriffCHECK
erstellt wurden, enthält die Ansicht die Spalten, die vom Ausdruck der Diagnoseeinschränkung verwendet werden. - Bei Fremdschlüsseleinschränkungen enthält die Ansicht die Spalten der referenzierten Tabelle.
- Für
UNIQUE
-Einschränkungen enthält die Ansicht die Spalten ausKEY_COLUMN_USAGE
.
Spaltenname | Typ | Beschreibung |
---|---|---|
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die Tabelle mit der Spalte enthält, die von der Einschränkung verwendet wird. |
table_name |
character varying |
Der Name der Tabelle, die die Spalte enthält, die von der Einschränkung verwendet wird. |
column_name |
character varying |
Der Name der Spalte, die von der Einschränkung verwendet wird. |
constraint_catalog |
character varying |
Der Datenbankname. |
constraint_schema |
character varying |
Der Name des Schemas der Einschränkung. |
constraint_name |
character varying |
Der Name der Einschränkung. |
constraint_table_usage
Diese Ansicht enthält eine Zeile für jede von einer Einschränkung verwendete Tabelle. Für FOREIGN
KEY
-Einschränkungen beziehen sich die Tabelleninformationen auf die Tabellen im REFERENCES
Klausel. Bei einer eindeutigen oder Primärschlüsseleinschränkung wird in dieser Ansicht die Tabelle angegeben, zu der die Einschränkung gehört. Prüfeinschränkungen und Nicht-Null-Einschränkungen sind
in dieser Ansicht nicht enthalten sind.
Spaltenname | Typ | Beschreibung |
---|---|---|
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas der eingeschränkten Tabelle. |
table_name |
character varying |
Der Name der Tabelle, der von einer Einschränkung verwendet wird. |
constraint_catalog |
character varying |
Der Datenbankname. |
constraint_schema |
character varying |
Der Name des Schemas, das die Einschränkung enthält. |
constraint_name |
character varying |
Der Name der Einschränkung. |
database_options
In dieser Tabelle sind die Optionen aufgeführt, die für die Datenbank festgelegt sind.
Spaltenname | Typ | Beschreibung |
---|---|---|
catalog_name |
character varying |
Der Datenbankname. |
schema_name |
character varying |
Der Name des Schemas. Der Standardwert für PostgreSQL-Datenbanken ist public . |
option_name |
character varying |
Der Name der Datenbankoption. Dies ist der Wert von key .
in der OPTIONS -Klausel in DDL. |
option_type |
character varying |
Der Datentyp der Datenbankoption. |
option_value |
character varying |
Der Wert der Datenbankoption. |
enabled_roles
In dieser nach Zeilen gefilterten Ansicht werden die definierten Datenbankrollen aufgelistet. Hauptkonten mit
IAM-Berechtigungen und Hauptkonten, die auf Datenbankebene
hat Zugriff auf die Systemrolle spanner_info_reader
oder Mitglieder von
kann diese Rolle alle
Datenbankrollen sehen. Alle anderen Hauptkonten können nur Folgendes sehen
Datenbankrollen, auf die sie entweder direkt oder über
Vererbung. In dieser Ansicht werden auch alle Systemrollen außer public
angezeigt.
Spaltenname | Typ | Beschreibung |
---|---|---|
role_name |
character varying |
Der Name der Rolle. |
spanner_is_system |
character varying |
YES , wenn es sich um eine Systemrolle handelt. Andernfalls
NO |
index_columns
In dieser Ansicht werden die Spalten in einem Index aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das den Index enthält. Der Standardwert ist public . |
table_name |
character varying |
Der Name der Tabelle, die mit dem Index verknüpft ist. |
index_name |
character varying |
Der Name des Index. Tabellen mit einer PRIMARY KEY -Spezifikation haben einen Pseudo-Indexeintrag, der mit dem Namen PRIMARY_KEY erzeugt wurde. |
index_type |
character varying |
Der Indextyp. Mögliche Werte sind PRIMARY_KEY , LOCAL und GLOBAL . |
column_name |
character varying |
Der Name der Spalte. |
ordinal_position |
BIGINT |
Die ordinale Position der Spalte im Index (oder Primärschlüssel), beginnend mit dem Wert 1. Dieser Wert ist NULL bei Spalten, die keine Schlüsselspalten sind (beispielsweise Spalten, die in der INCLUDE -Klausel eines Index angegeben werden). |
column_ordering |
character varying |
Die Sortierreihenfolge der Spalte. Der Wert ist ASC oder
DESC für Schlüsselspalten und NULL für Nicht-Schlüsselspalten
Spalten (z. B. Spalten, die in STORING angegeben wurden)
-Klausel eines Index). |
is_nullable |
character varying |
Ein String, der angibt, ob die Spalte Nullwerte enthalten kann. In Übereinstimmung mit
Beim SQL-Standard ist der String entweder YES oder
NO anstelle eines booleschen Werts. |
spanner_type |
character varying |
Ein String, der den DDL-kompatiblen Typ der Spalte enthält. |
indexes
In dieser Ansicht sind die Indexe in einem Schema aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas. Der Standardwert ist public . |
table_name |
character varying |
Der Name der Tabelle. |
index_name |
character varying |
Der Name des Index. Mit PRIMARY KEY erstellte Tabellen
einen Pseudoindexeintrag mit dem Namen PRIMARY_KEY generiert,
damit die Felder des Primärschlüssels identifiziert werden können. |
index_type |
character varying |
Der Typ des Index. Zu den Werten gehören PRIMARY_KEY , LOCAL oder GLOBAL . |
parent_table_name |
character varying |
Sekundäre Indexe können in einer übergeordneten Tabelle verschränkt sein, wie in Erstellen eines sekundärer Index. Diese Spalte enthält den Namen der übergeordneten Tabelle oder Ein leerer String, wenn der Index nicht verschränkt ist. |
is_unique |
character varying |
Gibt an, ob die Indexschlüssel einmalig sein müssen. Gemäß den SQL-
Standard ist der String entweder YES oder NO ,
als ein boolescher Wert. |
is_null_filtered |
character varying |
Gibt an, ob der Index Einträge mit NULL -Werten enthält. Gemäß dem SQL-Standard ist der String entweder YES oder NO und kein boolescher Wert. |
index_state |
character varying |
Der aktuelle Status des Index. Folgende Werte und zugehörige Status sind möglich:
|
spanner_is_managed |
character varying |
Gibt an, ob der Index von Spanner verwaltet wird. Sekundäre Sicherungsindexe für Fremdschlüssel werden beispielsweise von Spanner verwaltet. Gemäß dem SQL-Standard ist der String entweder YES oder NO und kein boolescher Wert. |
information_schema_catalog_name
Diese Tabelle enthält eine Zeile und eine Spalte mit dem Datenbanknamen.
Spaltenname | Typ | Beschreibung |
---|---|---|
catalog_name |
character varying |
Der Datenbankname. |
key_column_usage
Diese Ansicht identifiziert alle Spalten in der aktuellen Datenbank, auf die durch
eine eindeutige, Primärschlüssel- oder Fremdschlüsseleinschränkung. Informationen zu CHECK
finden Sie in der Ansicht check_constraints
.
Spaltenname | Typ | Beschreibung |
---|---|---|
constraint_catalog |
character varying |
Der Datenbankname. |
constraint_schema |
character varying |
Der Name des Schemas der Einschränkung. Der Standardwert ist public . |
constraint_name |
character varying |
Der Name der Einschränkung. |
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die Tabelle mit der eingeschränkten Spalte enthält. Der Standardwert ist public . |
table_name |
character varying |
Der Name der Tabelle mit der Spalte, die eingeschränkt ist durch dieser Einschränkung. |
column_name |
character varying |
Der Name der Spalte, die eingeschränkt ist. |
ordinal_position |
BIGINT |
Die ordinale Position der Spalte innerhalb des Schlüssels der Einschränkung, beginnend mit dem Wert 1 . |
position_in_unique_constraint |
BIGINT |
Für FOREIGN KEY s die ordinale Position der Spalte innerhalb der eindeutigen Einschränkung, beginnend mit dem Wert 1 . Bei anderen Einschränkungstypen hat diese Spalte den Wert NULL . |
parameters
In dieser zeilengefilterten Ansicht werden die Argumente für jede Lesefunktion des Änderungsstreams definiert. Jede Zeile beschreibt ein Argument für eine Änderungsstream-Lesefunktion.
Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die Systemrolle spanner_info_reader
oder auf Mitglieder dieser Rolle gewährt wurde, können alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptpersonen können nur Parameter für Lesefunktionen von Änderungsstreams sehen, für die das Berechtigungsprivileg EXECUTE
für die aktuelle Datenbankrolle, für Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder für public
gewährt wurde.
Spaltenname | Typ | Beschreibung |
---|---|---|
specific_catalog |
character varying |
Der Datenbankname. |
specific_schema |
character varying |
Der Name des Schemas der Routine. Für Datenbanken mit PostgreSQL-Dialekt ist die Standardeinstellung
ist public . |
specific_name |
character varying |
Der Name der Routine. Er identifiziert die Routine eindeutig, auch wenn ihr Name überladen ist. |
ordinal_position |
bigint |
Die ordinale Position des Parameters in der Argumentliste des an, die mit dem Wert 1 beginnt. |
parameter_mode |
character varying |
Nicht verwendet. Immer NULL . |
is_result |
character varying |
Nicht verwendet. Immer NULL . |
as_locator |
character varying |
Nicht verwendet. Immer NULL . |
parameter_name |
character varying |
Name des Parameters. |
data_type |
character varying |
Der Datentyp des Parameters. Der Wert ist einer der
folgen: <ph type="x-smartling-placeholder">
|
character_maximum_length |
bigint |
Nicht verwendet. Immer NULL . |
character_octet_length |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
character_set_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
character_set_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
character_set_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
collation_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
collation_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
collation_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
numeric_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
numeric_precision_radix |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
numeric_scale |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
datetime_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
interval_type |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
interval_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
udt_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
udt_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
udt_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
scope_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
scope_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
scope_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
maximum_cardinality |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
dtd_identifier |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
parameter_default |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
placements
In dieser Tabelle sind die Placements in der Datenbank aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
placement_name |
character varying |
Der Name des Placements. |
is_default |
character varying |
Ein String, der angibt, ob die Spalte Nullwerte enthalten kann. Gemäß dem SQL-Standard ist der String entweder YES oder NO und kein boolescher Wert. |
placement-options
In dieser Tabelle sind für jedes Placement die Optionen aufgeführt, die in der OPTIONS
-Klausel der CREATE PLACEMENT
-Anweisung für das Placement festgelegt sind.
Spaltenname | Typ | Beschreibung |
---|---|---|
placement_name |
character varying |
Der Name des Placements. |
option_name |
character varying |
Der Name der Placement-Option. Gültige Werte für option_name sind:
|
option_type |
character varying |
Der Datentyp der Placement-Option. |
option_value |
character varying |
Der Wert der Placement-Option. Für instance_partition ,
der Name der Instanzpartition. Für default_leader ,
Dies ist der Name der standardmäßig führenden Region. |
referential_constraints
Diese Ansicht enthält eine Zeile zu jeder FOREIGN KEY
-Einschränkung. Sie können nur sehen,
die Einschränkungen, für die Sie Schreibzugriff auf die verweisende Tabelle haben. Dieses
enthält auch die Einschränkungen PRIMARY KEY
und UNIQUE
für die
referenzierten Tabellen, die die Fremdschlüssel zur Einschränkungserzwingung verwenden,
referenzielle Aktionen.
Spaltenname | Typ | Beschreibung |
---|---|---|
constraint_catalog |
character varying |
Der Datenbankname. |
constraint_schema |
character varying |
Der Name des Schemas, das die Fremdschlüsseleinschränkung enthält. Die
Der Standardwert ist public . |
constraint_name |
character varying |
Der Name der Fremdschlüsseleinschränkung. |
unique_constraint_catalog |
character varying |
Der Datenbankname. |
unique_constraint_schema |
character varying |
Der Name des Schemas, das die UNIQUE- oder PRIMARY KEY-Einschränkung enthält, auf die die Fremdschlüsseleinschränkung verweist. |
unique_constraint_name |
character varying |
Der Name der UNIQUE- oder PRIMARY KEY-Einschränkung, auf die die FOREIGN KEY-Einschränkung verweist. |
match_option |
character varying |
Die Abgleichmethode, die von der Fremdschlüsseleinschränkung verwendet wird. Der Wert ist immer
NONE
|
update_rule |
character varying |
Die Aktualisierungsregel der Fremdschlüsseleinschränkung. Dieser Wert ist immer
NO ACTION
|
delete_rule |
character varying |
Die Löschregel der Fremdschlüsseleinschränkung. Dieser Wert ist entweder
CASCADE oder NO ACTION . |
spanner_state |
character varying |
Der aktuelle Status des Fremdschlüssels. Spanner beginnt nicht
Erzwingen der Einschränkung, bis die unterstützenden Indexe des Fremdschlüssels
erstellt und aufgefüllt. Sobald die Indexe bereit sind,
beginnt, die Einschränkung für neue Transaktionen zu erzwingen, während die
vorhandenen Daten. Die möglichen Werte und die Status, die sie darstellen, sind:
|
role_change_stream_grants
In dieser nach Zeilen gefilterten Ansicht sind die SELECT
Berechtigungen aufgeführt, die für alle Änderungen gewährt wurden
Streams an eine beliebige Datenbankrolle, einschließlich public
. Hauptkonten mit
IAM-Berechtigungen und Hauptkonten, die auf Datenbankebene
hat Zugriff auf die Systemrolle spanner_info_reader
oder deren Mitglieder gewährt
Rolle alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Berechtigungen sehen, die für Änderungsstreams für die aktuelle Datenbankrolle und für Rollen gewährt wurden, in denen die aktuelle Datenbankrolle Mitglied ist, einschließlich public
.
Spaltenname | Typ | Beschreibung |
---|---|---|
grantor |
character varying |
Nicht verwendet. Immer NULL . |
grantee |
character varying |
Der Name der Datenbankrolle, der diese Berechtigung gewährt wird. |
change_stream_catalog |
character varying |
Der Datenbankname. |
change_stream_schema |
character varying |
Der Name des Schemas, das den Änderungsstream enthält.
Der Standardwert für PostgreSQL-Dialekt-Datenbanken ist public . |
change_stream_name |
character varying |
Der Name des Änderungsstreams. |
privilege_type |
character varying |
Die Art der Berechtigung (nur SELECT ). |
is_grantable |
character varying |
Nicht verwendet. Immer NO . |
role_column_grants
In dieser nach Zeilen gefilterten Ansicht werden alle Berechtigungen für die detaillierte Zugriffssteuerung aufgelistet, die für alle Spalten gewährt wurden
zu einer beliebigen Datenbankrolle, einschließlich public
. Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die Systemrolle spanner_info_reader
oder auf Mitglieder dieser Rolle gewährt wurde, können alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Berechtigungen sehen, die für Spalten gewährt wurden
die aktuelle Datenbankrolle und die Rollen, von denen die aktuelle Datenbankrolle ein
Mitglied, ausgenommen public
.
Die Ansicht enthält die Berechtigungen SELECT
, INSERT
und UPDATE
, die vom
-Spalte wird von der Tabelle oder Ansicht übernommen, die die Spalte enthält.
Spaltenname | Typ | Beschreibung |
---|---|---|
grantor |
character varying |
Nicht verwendet. Immer NULL . |
grantee |
character varying |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die Tabelle oder Ansicht enthält. Die Standardeinstellung ist public für Datenbanken im PostgreSQL-Dialekt. |
table_name |
character varying |
Der Name der Tabelle oder Ansicht, die die Spalte enthält. |
column_name |
character varying |
Der Name der Spalte. |
privilege_type |
character varying |
Die Art der Berechtigung (SELECT ,
INSERT oder UPDATE ). |
is_grantable |
character varying |
Nicht verwendet. Immer NO . |
role_routine_grants
In dieser nach Zeilen gefilterten Ansicht sind die EXECUTE
Berechtigungen aufgeführt, die für alle Änderungen gewährt wurden
Lesefunktionen in eine beliebige Datenbankrolle, einschließlich public
, streamen. Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die Systemrolle spanner_info_reader
oder auf Mitglieder dieser Rolle gewährt wurde, können alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Berechtigungen sehen, die für den Änderungsstream gewährt wurden
Lesen von Funktionen in die aktuelle Datenbankrolle und in die Rollen, von denen die aktuelle
Datenbankrolle ist Mitglied, ausgenommen public
.
Spaltenname | Typ | Beschreibung |
---|---|---|
grantor
|
character varying
|
Nicht verwendet. Immer NULL . |
grantee
|
character varying
|
Der Name der Rolle, der die Berechtigung gewährt wurde. |
specific_catalog
|
character varying
|
Der Datenbankname. |
specific_schema
|
character varying
|
Der Name des Schemas der Routine. Für Datenbanken mit PostgreSQL-Dialekt ist die Standardeinstellung
ist public . |
specific_name
|
character varying
|
Der Name des Ablaufs. Identifiziert den Ablauf eindeutig, selbst wenn der Name ist überlastet. |
routine_catalog
|
character varying
|
Der Datenbankname. |
routine_schema
|
character varying
|
Der Name des Schemas der Routine. Die Standardeinstellung ist public für Datenbanken mit PostgreSQL-Dialekt. |
routine_name
|
character varying
|
Der Name der Routine. (Mögliche Duplikate bei overloading.) |
privilege_type
|
character varying
|
Die Art der gewährten Berechtigung. Immer EXECUTE . |
is_grantable
|
character varying
|
Nicht verwendet. Immer NO . |
role_table_grants
In dieser nach Zeilen gefilterten Ansicht werden alle Berechtigungen für die detaillierte Zugriffssteuerung aufgelistet, die für alle Tabellen gewährt wurden
und Ansichten für jede Datenbankrolle, einschließlich public
. Hauptkonten mit
IAM-Berechtigungen und Hauptkonten, die auf Datenbankebene
hat Zugriff auf die Systemrolle spanner_info_reader
oder deren Mitglieder gewährt
Rolle alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Berechtigungen sehen
die für Tabellen und Ansichten der aktuellen Datenbankrolle und den Rollen, von denen
die aktuelle Datenbankrolle ein Mitglied ist, ausgenommen public
.
Spaltenname | Typ | Beschreibung |
---|---|---|
grantor |
character varying |
Nicht verwendet. Immer NULL . |
grantee |
character varying |
Der Name der Datenbankrolle, der diese Berechtigung gewährt wird. |
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die Tabelle oder Ansicht enthält. Die Standardeinstellung ist public für Datenbanken mit PostgreSQL-Dialekt. |
table_name |
character varying |
Der Name der Tabelle oder Ansicht. |
privilege_type |
character varying |
Der Typ des Berechtigungstyps (SELECT , INSERT , UPDATE oder DELETE ). |
is_grantable |
character varying |
Nicht verwendet. Immer NO . |
with_hierarchy |
character varying |
Nicht verwendet. Immer NULL . |
routine_options
Diese nach Zeilen gefilterte Ansicht enthält eine Zeile pro Option für jede definierte Änderung Stream-Lesefunktion.
Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, die
haben Zugriff auf die Systemrolle spanner_info_reader
oder Mitglieder erhalten
dieser Rolle alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Folgendes sehen
Optionen für Lesefunktionen für Änderungsstreams, für die die differenzierte EXECUTE
-Zugriffssteuerung verwendet wird
Die Berechtigung wird der aktuellen Datenbankrolle gewährt, und zwar für die Rollen, von denen die aktuelle
Datenbankrolle ein Mitglied ist oder public
.
Spaltenname | Typ | Beschreibung |
---|---|---|
specific_catalog
|
character varying
|
Der Datenbankname. |
specific_schema
|
character varying
|
Der Name des Schemas der Routine. Die Standardeinstellung ist public für Datenbanken mit PostgreSQL-Dialekt. |
specific_name
|
character varying
|
Der Name der Routine. Er identifiziert die Routine eindeutig, auch wenn ihr Name überladen ist. |
option_name
|
character varying
|
Der Name der Option. |
option_type
|
character varying
|
Der Datentyp der Option. Der Wert ist einer der folgenden: <ph type="x-smartling-placeholder">
|
option_value
|
character varying
|
Der Wert der Option. |
routine_privileges
In dieser nach Zeilen gefilterten Ansicht werden alle Berechtigungen für die detaillierte Zugriffssteuerung aufgelistet, die bei allen Änderungen gewährt wurden
Lesefunktionen in eine beliebige Datenbankrolle, einschließlich public
, streamen. Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die Systemrolle spanner_info_reader
oder auf Mitglieder dieser Rolle gewährt wurde, können alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Berechtigungen sehen, die der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
für Lesefunktionen des Änderungsstreams gewährt wurden.
Spaltenname | Typ | Beschreibung |
---|---|---|
grantor
|
character varying
|
Nicht verwendet. Immer NULL . |
grantee
|
character varying
|
Der Name der Rolle, der die Berechtigung gewährt wurde. |
specific_catalog
|
character varying
|
Der Datenbankname. |
specific_schema
|
character varying
|
Der Name des Schemas der Routine. Für Datenbanken mit PostgreSQL-Dialekt ist die Standardeinstellung
ist public . |
specific_name
|
character varying
|
Der Name des Ablaufs. Identifiziert den Ablauf eindeutig, selbst wenn der Name ist überlastet. |
routine_catalog
|
character varying
|
Der Datenbankname. |
routine_schema
|
character varying
|
Der Name des Schemas der Routine. Der Standardwert ist public . |
routine_name
|
character varying
|
Der Name der Routine. (Wird bei Überlastung möglicherweise dupliziert.) |
privilege_type
|
character varying
|
Die Art der gewährten Berechtigung. |
is_grantable
|
character varying
|
Nicht verwendet. Immer NO . |
routines
In dieser zeilenfiltrierten Ansicht werden alle Lesefunktionen für Änderungsstreams einer Datenbank aufgelistet.
Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, die
haben Zugriff auf die Systemrolle spanner_info_reader
oder Mitglieder erhalten
dieser Rolle alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Folgendes sehen
Lesefunktionen für Änderungsstreams, für die die Berechtigung EXECUTE
für die detaillierte Zugriffssteuerung gilt
der aktuellen Datenbankrolle, den Rollen der aktuellen Datenbank
Rolle ein Mitglied ist, oder von public
.
Spaltenname | Typ | Beschreibung |
---|---|---|
specific_catalog |
character varying |
Der Datenbankname. |
specific_schema |
character varying |
Der Name des Schemas der Routine. Die Standardeinstellung ist public für Datenbanken mit PostgreSQL-Dialekt. |
specific_name |
character varying |
Der Name des Ablaufs. Identifiziert den Ablauf eindeutig, selbst wenn der Name ist überlastet. |
routine_catalog |
character varying |
Der Datenbankname. |
routine_schema |
character varying |
Der Name des Schemas der Routine. |
routine_name |
character varying |
Der Name des Ablaufs. (Mögliche Duplikate bei overloading.) |
routine_type |
character varying |
Der Typ des Ablaufs (FUNCTION oder
PROCEDURE ). Immer FUNCTION |
module_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
module_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
module_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
udt_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
udt_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
udt_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
data_type |
character varying |
Der Rückgabetyp der Routine. Der Wert ist einer der folgenden:
|
character_maximum_length |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
character_octet_length |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
character_set_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
character_set_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
character_set_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
collation_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
collation_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
collation_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
numeric_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
numeric_precision_radix |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
numeric_scale |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
datetime_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
interval_type |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
interval_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
type_udt_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
type_udt_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
type_udt_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
scope_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
scope_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
scope_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
maximum_cardinality |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
dtd_identifier |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
routine_body |
character varying |
Der Typ des Routine-Texts (SQL oder EXTERNAL ). |
routine_definition |
character varying |
Die Definition für die routine_body -SQL, leer
sonst. |
external_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
external_language |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
parameter_style |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
is_deterministic |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
sql_data_access |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
is_null_call |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
sql_path |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
schema_level_routine |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
max_dynamic_result_sets |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
is_user_defined_cast |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
is_implicitly_invocable |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
security_type |
character varying |
Der Sicherheitstyp des Ablaufs. Es wird nur INVOKER unterstützt. |
to_sql_specific_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
to_sql_specific_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
to_sql_specific_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
as_locator |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
created |
timestamp with time zone |
Nicht verwendet. Der Wert ist immer NULL . |
last_altered |
timestamp with time zone |
Nicht verwendet. Der Wert ist immer NULL . |
new_savepoint_level |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
is_udt_dependent |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_from_data_type |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_as_locator |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_char_max_length |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_char_octet_length |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_char_set_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_char_set_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_char_set_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_collation_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_collation_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_collation_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_numeric_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_numeric_precision_radix |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_numeric_scale |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_datetime_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_interval_type |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_interval_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_type_udt_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_type_udt_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_type_udt_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_scope_catalog |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_scope_schema |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_scope_name |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_maximum_cardinality |
bigint |
Nicht verwendet. Der Wert ist immer NULL . |
result_cast_dtd_identifier |
character varying |
Nicht verwendet. Der Wert ist immer NULL . |
schemata
Die Ansicht information_schema.schemata
enthält eine Zeile für jedes Schema in der aktuellen Datenbank. Die Schemas enthalten das Informationsschema und ein Standardschema
Schema mit dem Namen public
.
Spaltenname | Typ | Beschreibung |
---|---|---|
catalog_name |
character varying |
Der Datenbankname. |
schema_name |
character varying |
Der Name des Schemas. Dies ist für das Standardschema auf public festgelegt
und nicht leer für benannte Schemas. |
schema_owner |
character varying |
Der Name des Schemainhabers. |
default_character_set_catalog |
character varying |
Nicht verwendet. |
default_character_set_schema |
character varying |
Nicht verwendet. |
default_character_set_name |
character varying |
Nicht verwendet. |
sql_path |
character varying |
Nicht verwendet. |
effective_timestamp |
timestamp with timezone |
Der Zeitstempel, zu dem alle Daten in diesem Schema wurden wirksam sind. Diese Einstellung wird nur für das Standardschema verwendet. |
sequences
Die Ansicht information_schema.sequences
enthält die sequences
-Metadaten.
Spaltenname | Typ | Beschreibung |
---|---|---|
sequence_catalog |
character varying |
Der Datenbankname. |
sequence_schema |
character varying |
Der Name des Schemas der Sequenz. Der Standardwert ist public .
für eine PostgreSQL-Dialekt-Datenbank. |
sequence_name |
character varying |
Der Name der Sequenz. |
data_type |
character varying |
Sequenz unterstützt nur int8 . |
numeric_precision |
bigint |
Nicht verwendet. Der Wert ist immer NULL. |
numeric_precision_radix |
bigint |
Nicht verwendet. Der Wert ist immer „NULL“. |
numeric_scale |
bigint |
Nicht verwendet. Der Wert ist immer „NULL“. |
start_value |
bigint |
Nicht verwendet. Der Wert ist immer „NULL“. |
minimum_value |
bigint |
Nicht verwendet. Der Wert ist immer „NULL“. |
maximum_value |
bigint |
Nicht verwendet. Der Wert ist immer „NULL“. |
increment |
bigint |
Nicht verwendet. Der Wert ist immer „NULL“. |
cycle_option |
character varying |
Die einzige Option, die von sequence akzeptiert wird, ist no . |
sequence_kind |
character varying |
Die Art der Sequenz. bit_reversed_positive ist der einzige zulässige Wert. |
counter_start_value |
bigint |
Startwert des Sequenzzählers. |
skip_range_min |
bigint |
Der Mindestwert im übersprungenen Bereich. Wenn nicht festgelegt, ist der Standardwert NULL . |
skip_range_max |
bigint |
Der Maximalwert im übersprungenen Bereich. Wenn nicht festgelegt, ist der Standardwert NULL . |
spanner_statistics
In dieser Tabelle sind die verfügbaren Statistikpakete für die Abfrageoptimierung aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
catalog_name |
character varying |
Der Datenbankname. |
schema_name |
character varying |
Der Name des Schemas. Der Standardschemawert ist public . |
package_name |
character varying |
Der Name des Statistikpakets. |
allow_gc |
character varying |
Gibt an, ob das Statistikpaket von der automatischen Speicherbereinigung ausgenommen ist. In
Gemäß SQL-Standard ist der String entweder YES oder
NO anstelle eines booleschen Werts. Dieses Attribut muss auf NO gesetzt sein, bevor Sie in einem Hinweis oder über die Client API auf das Statistikpaket verweisen können.
|
table_constraints
Diese Ansicht enthält alle Einschränkungen, die zu Tabellen gehören, auf die der aktuelle Nutzer Zugriff hat (außer SELECT
).
Spaltenname | Typ | Beschreibung |
---|---|---|
constraint_catalog |
character varying |
Der Datenbankname. |
constraint_schema |
character varying |
Der Name des Schemas, das die Einschränkung enthält. |
constraint_name |
character varying |
Der Name der Einschränkung. |
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die mit der Einschränkung verknüpfte Tabelle enthält. |
table_name |
character varying |
Der Name der Tabelle. |
constraint_type |
character varying |
Der Typ der Einschränkung. Folgende Werte sind möglich:
|
is_deferrable |
character varying |
Der Wert ist immer NO . |
initially_deferred |
character varying |
Der Wert ist immer NO . |
enforced |
character varying |
Gibt an, ob die Einschränkung erzwungen wird. Wenn eine Einschränkung erzwungen wird (nach
einen bestimmten Zustand erreicht, wird er sowohl während des Schreibvorgangs als auch durch eine
Hintergrundintegritätsprüfung ausführen. In Übereinstimmung mit dem SQL-Standard
String ist entweder YES oder NO und nicht
Boolescher Wert. |
table_privileges
In dieser zeilenfiltrierten Ansicht sind alle Berechtigungen für die detaillierte Zugriffssteuerung aufgeführt, die für alle Tabellen und Ansichten für eine beliebige Datenbankrolle gewährt wurden, einschließlich public
. Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die Systemrolle spanner_info_reader
oder auf Mitglieder dieser Rolle gewährt wurde, können alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur Berechtigungen sehen, die für Tabellen und Ansichten der aktuellen Datenbankrolle, für Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder für public
gewährt wurden.
Spaltenname | Typ | Beschreibung |
---|---|---|
grantor |
character varying |
Nicht verwendet. Immer NULL . |
grantee |
character varying |
Der Name der Datenbankrolle, der diese Berechtigung gewährt wird. |
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die Tabelle oder Ansicht enthält.
Die Standardeinstellung ist public für Datenbanken mit PostgreSQL-Dialekt. |
table_name |
character varying |
Der Name der Tabelle oder Ansicht. |
privilege_type |
character varying |
Der Typ des Berechtigungstyps (SELECT , INSERT , UPDATE oder DELETE ). |
is_grantable |
character varying |
Nicht verwendet. Immer NO . |
that have_hierarchy |
character varying |
Nicht verwendet. Immer NULL . |
tables
In dieser zeilenfiltrierten Ansicht sind alle Tabellen und Ansichten der aktuellen Datenbank aufgeführt.
Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, die
haben Zugriff auf die Systemrolle spanner_info_reader
oder Mitglieder erhalten
dieser Rolle alle Tabellen und Ansichten sehen. Alle anderen Hauptkonten können nur Tabellen sehen
die eine der folgenden Anforderungen erfüllen:
-
SELECT
,INSERT
,UPDATE
, oderDELETE
detaillierte Zugriffssteuerung werden der aktuellen Datenbankrolle Berechtigungen für die Tabelle gewährt, für die die Rolle aktuelle Datenbankrolle ein Mitglied ist, oderpublic
. SELECT
,INSERT
oderUPDATE
Berechtigungen für jede Tabellenspalte der aktuellen Datenbankrolle Rollen, denen die aktuelle Datenbankrolle angehört, oderpublic
.
Spaltenname | Typ | Beschreibung |
---|---|---|
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas, das die Tabelle oder Ansicht enthält. |
table_name |
character varying |
Der Name der Tabelle, Ansicht oder des Synonyms. |
table_type |
character varying |
Der Tabellentyp. Mögliche Werte sind „BASE TABLE“, „VIEW“ oder „SYNONYM“. |
self_referencing_column_name |
character varying |
Nicht verwendet. |
reference_generation |
character varying |
Nicht verwendet. |
user_defined_type_catalog |
character varying |
Nicht verwendet. |
user_defined_type_schema |
character varying |
Nicht verwendet. |
user_defined_type_name |
character varying |
Nicht verwendet. |
is_insertable_into |
character varying |
Nicht verwendet. |
is_typed |
character varying |
Nicht verwendet. |
commit_action |
character varying |
Nicht verwendet. |
parent_table_name |
character varying |
Der Name der übergeordneten Tabelle, wenn die Tabelle verknüpft ist, oder NULL . |
on_delete_action |
character varying |
Dieser Wert ist auf CASCADE oder NO ACTION festgelegt für
verschränkte Tabellen und andernfalls NULL . Weitere Informationen finden Sie unter TABLE-Anweisungen. |
spanner_state |
character varying |
Der aktuelle Erstellungsstatus der Tabelle. Eine Tabelle kann bei der Erstellung mehrere Status durchlaufen, wenn Bulk-Vorgänge ausgeführt werden. Dies ist beispielsweise der Fall, wenn die Tabelle mit einem Fremdschlüssel erstellt wird, für den ein Backfill des referenzierten Indexes erforderlich ist. Mögliche Status sind:
|
interleave_type |
character varying |
Gibt an, ob zwischen dieser Tabelle und der Tabelle, in der sie verschachtelt ist, eine übergeordnete/untergeordnete Beziehung besteht. Folgende Werte sind möglich:
|
row_deletion_policy_expression |
character varying |
Ein String, der den Ausdruckstext enthält, der das ROW
DELETION POLICY definiert. |
table_synonyms
In dieser Tabelle sind Synonyminformationen für die Tabelle aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
CATALOG |
STRING |
Name des Katalogs, der die Tabelle enthält. |
SCHEMA |
STRING |
Name des Schemas, das die Tabelle enthält. |
TABLE_NAME |
STRING |
Name der Tabelle |
SYNONYM_CATALOG |
STRING |
Der Name des Katalogs für das Synonym. |
SYNONYM_SCHEMA |
STRING |
Der Name des Schemas für das Synonym. |
SYNONYM_TABLE_NAME |
STRING |
Der Name der Tabelle für das Synonym. |
views
In dieser zeilenfiltrierten Ansicht werden alle Ansichten in der aktuellen Datenbank aufgeführt. Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die Systemrolle spanner_info_reader
oder auf Mitglieder dieser Rolle gewährt wurde, können alle Ansichten sehen. Alle anderen Hauptrollen können nur Ansichten sehen, für die der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
die Berechtigung SELECT
für die detaillierte Zugriffssteuerung zugewiesen ist.
Spaltenname | Typ | Beschreibung |
---|---|---|
table_catalog |
character varying |
Der Datenbankname. |
table_schema |
character varying |
Der Name des Schemas. Der Standardwert ist public . |
table_name |
character varying |
Der Name der Ansicht. |
view_definition |
character varying |
Der SQL-Text der Abfrage, die die Ansicht definiert. |
check_option |
character varying |
Nicht verwendet. |
is_updatable |
character varying |
Nicht verwendet. |
is_insertable_into |
character varying |
Nicht verwendet. |
is_trigger_updatable |
character varying |
Nicht verwendet. |
is_trigger_deletable |
character varying |
Nicht verwendet. |
is_trigger_insertable_into |
character varying |
Nicht verwendet. |
security_type |
character varying |
Der Sicherheitstyp der Ansicht. Entweder INVOKER oder
DEFINER .
Weitere Informationen finden Sie unter Informationen zu Ansichten. |
Beispiele
Gibt Informationen zu allen Tabellen im Standardschema zurück:
SELECT
t.table_catalog,
t.table_name,
t.parent_table_name
FROM
information_schema.tables AS t
WHERE
t.table_schema = 'public'
ORDER BY
t.table_catalog,
t.table_schema,
t.table_name
Geben Sie den Namen aller Tabellen und Ansichten in der information_schema
zurück für
PostgreSQL-Dialekt-Datenbanken:
SELECT table_name
FROM information_schema.tables
WHERE table_schema = "information_schema"
Informationen zu den Spalten in der Nutzertabelle my_table
zurückgeben:
SELECT
t.ordinal_position,
t.column_name,
t.data_type,
t.spanner_type,
t.is_nullable
FROM
information_schema.columns AS t
WHERE
t.table_schema = 'public'
AND
t.table_name = 'my_table'
ORDER BY
t.ordinal_position
Gibt Informationen zu jedem Index im Standardschema im aktuellen Datenbank: ```sql AUSWÄHLEN t.table_name, t.index_name, t.parent_table_name VON information_schema.indexes AS t WO t.table_schema = 'public' UND t.index_type != 'PRIMARY_KEY' BESTELLEN NACH t.table_schema, t.table_name, t.index_name
Gibt alle Spalten zurück, die andere Optionen als die Standardoptionen verwenden:
SELECT
t.table_name,
t.column_name,
t.option_type,
t.option_value,
t.option_name
FROM
information_schema.column_options AS t
WHERE
t.table_schema = 'public'
ORDER BY
t.table_schema,
t.table_name,
t.column_name,
t.option_name
Geben Sie die aktuellen Optimierungs-Datenbankoptionen zurück:
SELECT
s.option_name,
s.option_value
FROM
information_schema.database_options s
WHERE
s.schema_name='public'
AND s.option_name IN ('optimizer_version',
'optimizer_statistics_package')
Gibt alle verfügbaren Statistikpakete zurück:
SELECT *
FROM information_schema.spanner_statistics;
Nächste Schritte
- Informiere dich über Tools zur Selbstprüfung, die Ihnen bei der Untersuchung von Datenbankproblemen helfen.