Informationsschema für PostgreSQL-Dialekt-Datenbanken

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 für Beispiel:

    • Mit der executeQuery API
    • Befehl gcloud spanner databases execute-sql
    • Die Seite Abfrage einer Datenbank in der Google Cloud Console.

    Andere einzelne Lesemethoden unterstützen information_schema nicht.

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 in den information_schema für PostgreSQL-Dialekt-Datenbanken sind:

  • 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 haben 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 und spanner_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. Bei anderen 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-Dialekt-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 nach Zeilen gefilterten Ansicht werden alle Rollenmitgliedschaften aufgelistet, denen alle Datenbankrollen. 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 „Mitglied“ ist.

Da alle Datenbankrollen Mitglieder der öffentlichen Rolle haben, lassen die Ergebnisse Datensätze für eine implizite Mitgliedschaft in der Rolle „Öffentlich“.

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 besteht gewährt wird.
is_grantable character varying Nicht verwendet. Immer NO.

change_stream_columns

Diese nach Zeilen gefilterte Ansicht enthält Informationen zu Tabellenspalten und der Änderung die sich die Videos ansehen. Jede Zeile enthält einen Änderungsstream und eine Spalte. Wenn ein Änderungsstream eine ganze Tabelle erfasst, werden die Spalten in dieser Tabelle nicht die in dieser Ansicht angezeigt werden.

Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die Systemrolle „spanner_info_reader“ gewährt wurde oder Mitglieder mit dieser Rolle können alle Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten Darf nur Zeilen für Änderungsstreams sehen, für die die Berechtigung SELECT gewährt wurde auf die aktuelle Datenbankrolle, auf die Rollen, bei denen die aktuelle Datenbankrolle Mitglied oder public.

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 Folgendes sehen Optionen für Änderungsstreams, für die dem Nutzer die Berechtigung SELECT gewährt wird aktuelle Datenbankrolle zu Rollen, denen die aktuelle Datenbankrolle zugehörig ist, oder an public.

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 Option für den Änderungsstream.
option_type character varying Der Datentyp der Option für den Änderungsstream.
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 bei Änderungsstreams der aktuellen Datenbankrolle gewährt wurde, für die die Rollen aktuelle Datenbankrolle ein Mitglied oder von public ist.

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 jeweils eine Zeile Prüfen Sie die durch das Schlüsselwort CHECK oder NOT NULL definierte Einschränkung.

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 Den Ausdruck der Prüfeinschränkung.
spanner_state character varying Der aktuelle Status der Diagnoseeinschränkung. Die möglichen Bundesländer sind wie folgt: <ph type="x-smartling-placeholder">
    </ph>
  • VALIDATING: Die PostgreSQL-Dialect-Datenbank validiert die vorhandenen Daten für eine ALTER CONSTRAINT oder ADD CONSTRAINT-Befehl.
  • COMMITTED: Für diese Einschränkung gibt es keine aktive Schemaänderung.

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 Funktion kann als Teil einer Abfrage geparst 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 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 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, für die diese Berechtigung gilt 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 Der Standardwert ist public für PostgreSQL-Dialekt-Datenbanken.
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 nach Zeilen gefilterte Ansicht bietet Informationen zu allen Tabellenspalten und zur Ansicht Spalten 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 Hauptkonten können nur Spalten mit einer detaillierten Zugriffssteuerung sehen Dem Nutzer zugewiesene Berechtigungen (oder die Berechtigungen SELECT, INSERT oder UPDATE) in deren enthaltenden Tabellen) die aktuelle Datenbankrolle, die Rollen dem die aktuelle Datenbankrolle ein Mitglied ist, oder public.

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 (für Beispiel, 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 einen Wert von 1
column_default character varying Stringdarstellung des Open-Source-PostgreSQL-Ausdrucks des Standardwerts 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: <ph type="x-smartling-placeholder">
    </ph>
  • Bei integrierten Typen der Name des Datentyps.
  • Für Arrays den Wert ARRAY.
character_maximum_length BIGINT Die angegebene maximale Länge für Zeichen- und Bitstring-Datentypen. Wenn keine maximale Länge angegeben wurde, lautet der Wert NULL. Wenn die Daten ist der Spaltentyp kein Zeichen oder eine Bitfolge, dann 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. Aktuell werden zwei Werte unterstützt: <ph type="x-smartling-placeholder">
    </ph>
  • 2 für double precision float8 und bigint
  • 10 für numeric
Für alle anderen Datentypen ist der Wert NULL.
numeric_scale BIGINT Enthält die Skalierung des Spaltentyps „Numerisch“, also die Anzahl der Precision-Basiseinheiten nach dem Radixpunkt. Für bigint: Wert 0 ist. Für alle anderen Datentypen ist 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 Einen 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 mit dem DDL-kompatiblen Typ der Spalte.
is_stored character varying Ein String, der angibt, ob die generierte Spalte gespeichert wird. Der String lautet immer YES oder NO für generierte Spalten und NULL für nicht generierte Spalten.
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:
  • NO_WRITE: In den Spalten ist kein Lese- oder Schreibzugriff erlaubt. Eine gespeicherte generierte Spalte mit diesem Status verursacht keinen Client Effekts.
  • WRITE_ONLY: Backfill für diese Spalte wird durchgeführt. Kein Lesevorgang ist Zulässig sind.
  • COMMITTED: Die Spalte ist vollständig nutzbar.
  • NULL: wird für Spalten in Systemschemas verwendet.

constraint_column_usage

Diese Ansicht enthält eine Zeile über jede Spalte, die von einer Einschränkung verwendet wird.

  • Für PRIMARY KEY- und CHECK-Einschränkungen, die durch NOT NULL definiert sind enthält, enthält die Ansicht diese Spalten.
  • Für CHECK-Einschränkungen, die mit dem Keyword CHECK erstellt wurden, wird die Ansicht enthält die Spalten, die vom Prüfeinschränkungsausdruck verwendet werden.
  • Bei Fremdschlüsseleinschränkungen enthält die Ansicht die Spalten der referenzierte Tabelle.
  • Für UNIQUE-Einschränkungen enthält die Ansicht die Spalten aus KEY_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 der von der Einschränkung verwendet wird.
table_name character varying Der Name der Tabelle, die die Spalte enthält der 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 Einschränkung vom Typ „Eindeutig“ oder „Primärschlüssel“ identifiziert diese Ansicht einfach die Tabelle, 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 ist public für PostgreSQL-Dialekt-Datenbanken.
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 die Rolle eine Systemrolle ist. Andernfalls NO

index_columns

In dieser Ansicht werden die Spalten in einem Index aufgelistet.

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 dem Index zugeordnet ist.
index_name character varying Der Name des Index. Tabellen mit PRIMARY KEY einen Pseudoindexeintrag mit dem Namen PRIMARY_KEY.
index_type character varying Der Indextyp. Mögliche Werte sind PRIMARY_KEY, LOCAL oder 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. Bei Nicht-Schlüssel-Werten beträgt dieser Wert NULL Spalten (z. B. Spalten, die im Feld INCLUDE-Klausel eines Index).
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 mit dem DDL-kompatiblen Typ der Spalte.

indexes

In dieser Ansicht werden die Indexe in einem Schema aufgelistet.

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. In Gemäß SQL-Standard ist der String entweder YES oder NO anstelle eines booleschen Werts.
index_state character varying Der aktuelle Status des Index. Mögliche Werte und die Status, die sie darstellen, sind: <ph type="x-smartling-placeholder">
    </ph>
  • NULL: Der Indextyp ist PRIMARY_KEY.
  • PREPARE: Leere Tabellen für einen neuen Index erstellen
  • WRITE_ONLY: Daten-Backfill für einen neuen Index ausführen
  • WRITE_ONLY_CLEANUP: Neuen Index bereinigen
  • WRITE_ONLY_VALIDATE_UNIQUE: Eindeutigkeit von Daten prüfen in einem neuen Index
  • READ_WRITE: normaler Indexvorgang
spanner_is_managed character varying Gibt an, ob der Index von Spanner verwaltet wird. Beispiel: Sekundäre Sicherungsindexe für Fremdschlüssel von Spanner verwaltet. Die String ist entweder YES oder NO und nicht Boolescher Wert gemäß SQL-Standard.

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 dem 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 Einschränkungsschlüssels, beginnend mit mit dem Wert 1.
position_in_unique_constraint BIGINT Für FOREIGN KEYs ist die ordinale Position der Spalte innerhalb Die eindeutige Einschränkung, beginnend mit dem Wert 1. Dieses die Spalte einen NULL-Wert für andere Einschränkungstypen enthält.

parameters

In dieser zeilengefilterten Ansicht werden die Argumente für jeden Lesevorgang des Änderungsstreams definiert . Jede Zeile beschreibt ein Argument für eine Änderungsstream-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 Parameter für Lesefunktionen des Ä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. 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.
ordinal_position bigint Die ordinale Position des Parameters in der Argumentliste der 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:
  • Bei integrierten Typen der Name des Datentyps.
  • Für Arrays ist der Wert ARRAY.
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.

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 Einschränkung des eindeutigen oder Primärschlüssels enthält auf die sich die Fremdschlüsseleinschränkung bezieht.
unique_constraint_name character varying Der Name der eindeutigen oder Primärschlüsseleinschränkung, die der Fremdschlüssel Referenzen für die Einschränkung.
match_option character varying Die von der Fremdschlüsseleinschränkung verwendete Abgleichmethode. 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: <ph type="x-smartling-placeholder">
    </ph>
  • BACKFILLING_INDEXES: Für Indexe wird ein Backfill durchgeführt.
  • VALIDATING_DATA: Vorhandene Daten und neue Schreibvorgänge werden ausgeführt validiert.
  • WAITING_FOR_COMMIT: Die Fremdschlüssel-Bulk-Vorgänge haben abgeschlossen wurde oder keiner erforderlich war, aber der Fremdschlüssel noch ausstehend.
  • COMMITTED: Die Schemaänderung wurde festgeschrieben.

role_change_stream_grants

In dieser nach Zeilen gefilterten Ansicht werden 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 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 bei Änderungsstreams der aktuellen Datenbankrolle und den Rollen, für die der Die aktuelle Datenbankrolle ist Mitglied, 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.
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 Datenbankebene IAM-Berechtigungen und Hauptkonten, denen Zugriff auf das spanner_info_reader-Systemrolle oder Mitglieder dieser Rolle können alle Zeilen in diese Ansicht. 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, für die diese Berechtigung gilt 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 Der Standardwert ist public für PostgreSQL-Dialekt-Datenbanken.
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 werden 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 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 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 PostgreSQL-Dialekt-Datenbanken.
routine_name character varying Der Name des Ablaufs. (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 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 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 PostgreSQL-Dialekt-Datenbanken.
table_name character varying Der Name der Tabelle oder Ansicht.
privilege_type character varying Die Art der Berechtigung (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 den Änderungsstream, 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 PostgreSQL-Dialekt-Datenbanken.
specific_name character varying Der Name des Ablaufs. Identifiziert den Ablauf eindeutig, selbst wenn der Name ist überlastet.
option_name character varying Der Name der Option.
option_type character varying Der Datentyp der Option. Der Wert ist einer der folgenden:
  • Bei integrierten Typen der Name des Datentyps.
  • Für Arrays ist der Wert ARRAY.
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. Direktoren, die haben 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 Berechtigungen sehen werden bei Lesefunktionen für Änderungsstreams der aktuellen Datenbankrolle und Rollen gewährt denen die aktuelle Datenbankrolle angehört, oder 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. Der Standardwert ist public.
routine_name character varying Der Name des Ablaufs. (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

Diese nach Zeilen gefilterte Ansicht listet alle Lesefunktionen des Änderungsstreams einer Datenbank auf. 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 PostgreSQL-Dialekt-Datenbanken.
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 folgen:
  • Bei integrierten Typen der Name des Datentyps.
  • Für Arrays ist der Wert ARRAY.
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/td&gt; 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 Ablaufs (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. Aktuell nur INVOKER.
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 im 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 wird derzeit 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 Derzeit nicht verwendet. Der Wert ist immer NULL.
numeric_precision_radix bigint Derzeit nicht verwendet. Der Wert ist immer NULL.
numeric_scale bigint Derzeit nicht verwendet. Der Wert ist immer NULL.
start_value bigint Derzeit nicht verwendet. Der Wert ist immer NULL.
minimum_value bigint Derzeit nicht verwendet. Der Wert ist immer NULL.
maximum_value bigint Derzeit nicht verwendet. Der Wert ist immer NULL.
increment bigint Derzeit 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 die einzige akzeptablen Wert.
counter_start_value bigint Startwert des Sequenzzählers.
skip_range_min bigint Der Minimalwert im übersprungenen Bereich. Dieser Wert beträgt NULL falls nicht festgelegt.
skip_range_max bigint Der Maximalwert im übersprungenen Bereich. Dieser Wert beträgt NULL falls nicht festgelegt.

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 festgelegt werden auf NO, bevor Sie auf das Statistikpaket in einem oder über die Client-API.

table_constraints

Diese Ansicht enthält alle Einschränkungen, die zu Tabellen des aktuellen Nutzers gehören Zugriff auf (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:
  • CHECK
  • FOREIGN KEY
  • PRIMARY KEY
  • UNIQUE
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 einen 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 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 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 Tabellen und Ansichten der aktuellen Datenbankrolle zugewiesen sind, deren Rollen der aktuelle Datenbankrolle ein Mitglied oder von public ist.

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. Der Standardwert für PostgreSQL-Dialekt-Datenbanken ist public.
table_name character varying Der Name der Tabelle oder Ansicht.
privilege_type character varying Die Art der Berechtigung (SELECT, INSERT, UPDATE oder DELETE).
is_grantable character varying Nicht verwendet. Immer NO.
that have_hierarchy character varying Nicht verwendet. Immer NULL.

tables

Diese nach Zeilen gefilterte Ansicht listet alle Tabellen und Ansichten auf, die sich in der aktuellen Datenbank befinden. 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, oder DELETE detaillierte Zugriffssteuerung werden der aktuellen Datenbankrolle Berechtigungen für die Tabelle gewährt, für die die Rolle aktuelle Datenbankrolle ein Mitglied ist, oder public.
  • SELECT, INSERT oder UPDATE Berechtigungen für jede Tabellenspalte der aktuellen Datenbankrolle Rollen, denen die aktuelle Datenbankrolle angehört, oder public.

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, der 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 diese Tabelle verschränkt 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 während der Erstellung mehrere Status durchlaufen, wenn Operationen erforderlich sind, z. B. wenn die Tabelle mit einer Fremdschlüssel, für den ein Backfill seines referenzierten Index erforderlich ist. Möglich Bundesländer sind: <ph type="x-smartling-placeholder">
    </ph>
  • ADDING_FOREIGN_KEY: Fremdschlüssel der Tabelle hinzufügen
  • WAITING_FOR_COMMIT: Schemaänderung wird abgeschlossen
  • COMMITTED: Die Schemaänderung zum Erstellen der Tabelle wurde festgeschrieben. Sie können erst in die Tabelle schreiben, wenn die Änderung verpflichtet.
  • NULL: Tabellen oder Ansichten, die keine Basistabellen sind.
interleave_type character varying Gibt an, ob eine Über-/Untergeordnet-Beziehung zwischen dieser Tabelle und in der es verschränkt ist. Folgende Werte sind möglich:
  • IN: Eine INTERLEAVE IN-Tabelle mit keine über-/untergeordneten Elemente Beziehung. Eine Zeile in dieser Tabelle kann unabhängig vom Existenz der übergeordneten Tabellenzeile.
  • IN PARENT: Eine INTERLEAVE IN PARENT-Tabelle mit einer Über-/Untergeordnet-Beziehung. Eine Zeile in dieser Tabelle muss vorhanden sein der übergeordneten Tabellenzeile.
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 nach Zeilen gefilterten Ansicht werden alle Ansichten in der aktuellen Datenbank aufgelistet. Direktoren, die haben IAM-Berechtigungen auf Datenbankebene und Hauptkonten, die Zugriff auf die Systemrolle spanner_info_reader oder Mitgliedern dieser Rolle gewährt Rolle alle Aufrufe sehen kann. Alle anderen Hauptkonten können nur Ansichten mit dem SELECT detaillierte Zugriffssteuerungsberechtigung, die der aktuellen Datenbankrolle gewährt wurde, zu Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder auf public.

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 jeder Tabelle 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:

SELECT
  t.table_name,
  t.index_name,
  t.parent_table_name
FROM
  information_schema.indexes AS t
WHERE
  t.table_schema = 'public'
  AND
  t.index_type != 'PRIMARY_KEY'
ORDER BY
  t.table_schema,
  t.table_name,
  t.index_name

Alle Spalten zurückgeben, 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 Optimierer-bezogenen 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')

Alle verfügbaren Statistikpakete zurückgeben:

SELECT *
FROM information_schema.spanner_statistics;

Nächste Schritte