Das Informationsschema ist ein integriertes Schema, über das alle Spanner-Datenbanken verfügen. 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 = ''
Nutzer mit einer detaillierten Zugriffssteuerung sehen je nach Datenbankrolle gefilterte Ergebnisse für einige INFORMATION_SCHEMA
-Tabellen. Weitere Informationen finden Sie unter Detaillierte Zugriffssteuerung.
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 Spanner Studio einer Datenbank in der Google Cloud Console
Andere Einzellesemethoden unterstützen INFORMATION_SCHEMA
nicht.
Weitere Hinweise zur Verwendung von INFORMATION_SCHEMA
:
- Abfragen für
INFORMATION_SCHEMA
können in einer schreibgeschützten Transaktion verwendet werden, jedoch nicht in einer Lese-Schreib-Transaktion. - Abfragen für
INFORMATION_SCHEMA
können starke Zeitstempelgrenzen, Zeitstempelgrenzen mit begrenzter Veralterung oder Zeitstempelgrenzen mit exakter Veralterung verwenden. - Wenn Sie eine Datenbank mit PostgreSQL-Dialekt verwenden, lesen Sie den Hilfeartikel Informationsschema für PostgreSQL-Datenbanken.
- Wenn Sie die detaillierte Zugriffssteuerung verwenden, werden
INFORMATION_SCHEMA
-Tabellen so gefiltert, dass nur Schemaelemente angezeigt werden, auf die Sie Zugriff haben.
Zeilenfilterung in Tabellen des information_schema
Hauptkonten mit IAM-Berechtigungen auf Datenbankebene und Hauptkonten, denen Zugriff auf die spanner_info_reader
Systemrolle (oder auf Mitglieder dieser Rolle) gewährt wurde, können alle Zeilen in allen information_schema-Tabellen sehen. Bei anderen Hauptpersonen werden Zeilen in einigen Tabellen anhand der aktuellen Datenbankrolle gefiltert. In den folgenden Abschnitten wird beschrieben, wie die Zeilenfilterung für die einzelnen Tabellen und Ansichten angewendet wird.
Tabellen im INFORMATION_SCHEMA
In den folgenden Abschnitten werden die Tabellen in der INFORMATION_SCHEMA
für Datenbanken mit GoogleSQL-Dialekt beschrieben.
SCHEMATA
In der Tabelle INFORMATION_SCHEMA.SCHEMATA
sind die Schemas in der Datenbank aufgeführt. Dazu zählen das Informationsschema und die benannten Schemas, die von Ihnen definierte Tabellen enthalten.
Spaltenname | Typ | Beschreibung |
---|---|---|
CATALOG_NAME |
STRING |
Der Name des Katalogs. Diese Spalte sorgt für die Kompatibilität mit Informationsschematabellen nach SQL-Standard. Diese Spalte enthält immer einen leeren String. |
SCHEMA_NAME |
STRING |
Der Name des Schemas. Dies ist der Name für benannte Schemas oder „“ für das Standardschema. |
PROTO_BUNDLE |
STRING |
Wenn die Datenbank Proto-Bundle-Anweisungen enthält, enthält diese Spalte Informationen zum im Schema verwendeten Proto-Bundle. Diese Spalte ist NULL, wenn in der Datenbank kein Proto-Bundle vorhanden ist. |
DATABASE_OPTIONS
In dieser Tabelle sind die Optionen aufgeführt, die für die Datenbank festgelegt sind.
Spaltenname | Typ | Beschreibung |
---|---|---|
CATALOG_NAME |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
SCHEMA_NAME |
STRING |
Der Name des Schemas. Eine leere Zeichenfolge, falls unbenannt. |
OPTION_NAME |
STRING |
Der Name der Datenbankoption. |
OPTION_TYPE |
STRING |
Der Datentyp der Datenbankoption. |
OPTION_VALUE |
STRING |
Der Wert der Datenbankoption. |
PLACEMENTS
In dieser Tabelle sind die Placements in der Datenbank aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
PLACEMENT_NAME |
STRING |
Der Name des Placements. |
IS_DEFAULT |
BOOL |
Ein boolescher Wert, der angibt, ob es sich bei dem Placement um das Standard-Placement handelt. |
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.
Gültige Werte für OPTION_NAME
sind:
instance_partition
default_leader
Spaltenname | Typ | Beschreibung |
---|---|---|
PLACEMENT_NAME |
STRING |
Der Name des Placements. |
OPTION_NAME |
STRING |
Der Name der Placement-Option. |
OPTION_TYPE |
STRING |
Der Datentyp der Placement-Option. Bei beiden Optionen ist das STRING(MAX) . |
OPTION_VALUE |
STRING |
Der Wert der Placement-Option. Bei instance_partition ist dies der Name der Instanzpartition. Bei default_leader ist das der Name der standardmäßigen führenden Region. |
TABLES
In dieser zeilenfiltrierten Tabelle sind die Tabellen und Ansichten in der 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 Zeilen in dieser Ansicht sehen. Alle anderen Hauptpersonen können nur Tabellen sehen, die eine der folgenden Anforderungen erfüllen:
-
Die Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
,UPDATE
oderDELETE
werden der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
für die Tabelle gewährt. - Die Berechtigungen
SELECT
,INSERT
oderUPDATE
werden der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
für jede Tabellenspalte gewährt.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_NAME |
STRING |
Der Name der Tabelle, Ansicht oder des Synonyms. |
TABLE_TYPE |
STRING |
Der Typ der Tabelle. Bei Tabellen hat er den Wert BASE TABLE , bei Ansichten den Wert VIEW und bei Synonymen den Wert SYNONYM . |
PARENT_TABLE_NAME |
STRING |
Der Name der übergeordneten Tabelle, wenn die Tabelle verknüpft ist, oder NULL . |
ON_DELETE_ACTION |
STRING |
Dies ist für verschränkte Tabellen auf CASCADE oder NO ACTION festgelegt, ansonsten auf NULL . Weitere Informationen finden Sie unter TABLE-Anweisungen. |
SPANNER_STATE |
STRING |
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 ihrer Indexe erforderlich ist. Mögliche Status sind:
|
INTERLEAVE_TYPE |
STRING |
Der Ausdruckstext, der angibt, ob zwischen dieser Tabelle und der Tabelle, in der sie verschachtelt ist, eine übergeordnete/untergeordnete Beziehung besteht.
Mögliche Werte sind:
|
ROW_DELETION_POLICY_EXPRESSION |
STRING |
Der Ausdruckstext, der die Richtlinie zum Löschen von Zeilen der Tabelle definiert.
Beispiel: OLDER_THAN(CreatedAt, INTERVAL 1 DAY) oder OLDER_THAN(ExpiredDate, INTERVAL 0 DAY) .
|
COLUMNS
In dieser nach Zeilen gefilterten Tabelle sind die Spalten einer Tabelle 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 Zeilen in dieser Ansicht sehen. Alle anderen Hauptrollen können nur Spalten sehen, die eine der folgenden Anforderungen erfüllen:
- Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
direkt für die Spalte gewährt. - Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
für die Tabelle gewährt, die die Spalte enthält.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_NAME |
STRING |
Der Name der Tabelle. |
COLUMN_NAME |
STRING |
Der Name der Spalte. |
ORDINAL_POSITION |
INT64 |
Die ordinale Position der Spalte in der Tabelle, beginnend mit dem Wert 1. |
COLUMN_DEFAULT |
STRING |
Eine Stringdarstellung des SQL-Ausdrucks für den Standardwert der Spalte.
Hinweis:Vor März 2022 wurde für |
DATA_TYPE |
STRING |
Enthalten, um den SQL-Standard zu erfüllen. Immer NULL . Siehe Spalte SPANNER_TYPE |
IS_NULLABLE |
STRING |
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. |
SPANNER_TYPE |
STRING |
Der Datentyp der Spalte. |
IS_GENERATED |
STRING |
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 |
STRING |
Ein String, der den SQL-Ausdruck einer generierten Spalte darstellt.
NULL , wenn die Spalte keine generierte Spalte ist. |
IS_STORED |
STRING |
Ein String, der angibt, ob die generierte Spalte gespeichert wird.
Bei generierten Spalten ist der String immer YES und für nicht generierte Spalten NULL . |
SPANNER_STATE |
STRING |
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:
|
COLUMN_PRIVILEGES
In dieser nach Zeilen gefilterten Tabelle sind alle Berechtigungen aufgeführt, die auf Spaltenebene für jede 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 für Spalten sehen, die eine der folgenden Anforderungen erfüllen:
- Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
direkt für die Spalte gewährt. - Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
für die Tabelle gewährt, die die Spalte enthält.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_NAME |
STRING |
Der Name der Tabelle, die die Spalte mit Berechtigungen enthält. |
COLUMN_NAME |
STRING |
Der Name der Spalte mit Berechtigungen. |
PRIVILEGE_TYPE |
STRING |
SELECT , INSERT , UPDATE |
GRANTEE |
STRING |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
TABLE_PRIVILEGES
In dieser nach Zeilen gefilterten Tabelle sind alle Berechtigungen aufgeführt, die Datenbankrollen auf Tabellenebene 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 für Tabellen sehen, für die der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
eine der folgenden Berechtigungen für die detaillierte Zugriffssteuerung zugewiesen ist: SELECT
, INSERT
, UPDATE
oder DELETE
.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_NAME |
STRING |
Der Name der Tabelle, für die Berechtigungen für die detaillierte Zugriffssteuerung gewährt werden. |
PRIVILEGE_TYPE |
STRING |
Entweder SELECT , INSERT , UPDATE oder DELETE |
GRANTEE |
STRING |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
TABLE_CONSTRAINTS
Diese Tabelle enthält eine Zeile für jede Einschränkung, die für die Tabellen in der Datenbank definiert ist.
Spaltenname | Typ | Beschreibung |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Immer ein leerer String. |
CONSTRAINT_SCHEMA |
STRING |
Der Name des Schemas der Einschränkung. Eine leere Zeichenfolge, falls unbenannt. |
CONSTRAINT_NAME |
STRING |
Der Name der Einschränkung. |
TABLE_CATALOG |
STRING |
Der Name des Katalogs der eingeschränkten Tabelle. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Schemas der eingeschränkten Tabelle. Eine leere Zeichenfolge, falls unbenannt. |
TABLE_NAME |
STRING |
Der Name der eingeschränkten Tabelle. |
CONSTRAINT_TYPE |
STRING |
Der Typ der Einschränkung. Folgende Werte sind möglich:
|
IS_DEFERRABLE |
STRING |
Immer NO . |
INITIALLY_DEFERRED |
STRING |
Immer NO . |
ENFORCED |
STRING |
NO , wenn die Einschränkung ein
informeller (NOT ENFORCED ) Fremdschlüssel ist.
YES für erzwungene Fremdschlüssel oder andere Einschränkungstypen.
|
CONSTRAINT_TABLE_USAGE
In dieser Tabelle sind Tabellen aufgeführt, in denen Einschränkungen definiert oder verwendet werden. Enthält Tabellen, die PRIMARY KEY
- und UNIQUE
- Einschränkungen definieren. Enthält auch die Referenztabellen mit FOREIGN KEY
-Definitionen.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Der Name des Katalogs der eingeschränkten Tabelle. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Schemas der eingeschränkten Tabelle. Eine leere Zeichenfolge, falls unbenannt. |
TABLE_NAME |
STRING |
Der Name der eingeschränkten Tabelle. |
CONSTRAINT_CATALOG |
STRING |
Der Name des Katalogs der Einschränkung. Immer ein leerer String. |
CONSTRAINT_SCHEMA |
STRING |
Der Name des Schemas der Einschränkung. Eine leere Zeichenfolge, falls unbenannt. |
CONSTRAINT_NAME |
STRING |
Der Name der Einschränkung. |
REFERENTIAL_CONSTRAINTS
Diese Tabelle enthält eine Zeile zu jeder Einschränkung von FOREIGN KEY
.
Spaltenname | Typ | Beschreibung |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Der Name des FOREIGN KEY-Katalogs. Immer ein leerer String. |
CONSTRAINT_SCHEMA |
STRING |
Der Name des FOREIGN KEY-Schemas. Eine leere Zeichenfolge, falls unbenannt. |
CONSTRAINT_NAME |
STRING |
Der Name des FOREIGN KEY. |
UNIQUE_CONSTRAINT_CATALOG |
STRING |
Der Katalogname der PRIMARY KEY- oder UNIQUE-Einschränkung, auf die die FOREIGN KEY-Referenzen verweisen. Immer ein leerer String. |
UNIQUE_CONSTRAINT_SCHEMA |
STRING |
Der Schemaname der PRIMARY KEY- oder UNIQUE-Einschränkung, auf die die FOREIGN KEY-Referenzen verweisen. Eine leere Zeichenfolge, falls unbenannt. |
UNIQUE_CONSTRAINT_NAME |
STRING |
Der Name der PRIMARY KEY- oder UNIQUE-Einschränkung, auf die der FOREIGN KEY-verweist. |
MATCH_OPTION |
STRING |
Immer SIMPLE . |
UPDATE_RULE |
STRING |
Immer NO ACTION . |
DELETE_RULE |
STRING |
CASCADE oder NO ACTION . |
SPANNER_STATE |
STRING |
Der aktuelle Status des Fremdschlüssels. Spanner setzt die Einschränkung erst durch, wenn die Backing-Indexe des Fremdschlüssels erstellt und ausgefüllt wurden. Sobald die Indexe bereit sind, beginnt Spanner, die Einschränkung für neue Transaktionen durchzusetzen, während die vorhandenen Daten validiert werden.
Folgende Werte und zugehörige Status sind möglich:
|
CHECK_CONSTRAINTS
Die Tabelle information_schema.CHECK_CONSTRAINTS
enthält eine Zeile zu jeder CHECK
-Einschränkung, die entweder durch den CHECK
- oder den NOT NULL
-Suchbegriff definiert ist.
Spaltenname | Typ | Beschreibung |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Der Name des Katalogs der Einschränkung. Diese Spalte ist nie Null, enthält jedoch immer einen leeren String. |
CONSTRAINT_SCHEMA |
STRING |
Der Name des Schemas der Einschränkung. Eine leere Zeichenfolge, falls unbenannt. |
CONSTRAINT_NAME |
STRING |
Der Name der Einschränkung. Diese Spalte ist nie Null. Wenn in der Schemadefinition nicht explizit angegeben, wird ein systemdefinierter Name zugewiesen. |
CHECK_CLAUSE |
STRING |
Die Ausdrücke der CHECK -Einschränkung. Diese Spalte ist nie Null. |
SPANNER_STATE |
STRING |
Der aktuelle Status der CHECK -Einschränkung. Diese Spalte ist nie Null. Folgende Status sind möglich:
|
KEY_COLUMN_USAGE
Diese zeilenfiltrierte Tabelle enthält eine Zeile zu jeder Spalte der Tabellen von TABLE_CONSTRAINTS
, die durch die Einschränkung PRIMARY KEY
, FOREIGN
KEY
oder UNIQUE
als Schlüssel eingeschränkt sind. 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 Spalten sehen, die die folgenden Kriterien erfüllen:
- Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
direkt für die Spalte gewährt. - Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
für die Tabelle gewährt, die die Spalte enthält.
Spaltenname | Typ | Beschreibung |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Der Name des Katalogs der Einschränkung. Immer ein leerer String. |
CONSTRAINT_SCHEMA |
STRING |
Der Name des Schemas der Einschränkung. Diese Spalte ist nie Null. Ein leerer String, falls unbenannt. |
CONSTRAINT_NAME |
STRING |
Der Name der Einschränkung. |
TABLE_CATALOG |
STRING |
Der Name des Katalogs der eingeschränkten Spalte. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Schemas der eingeschränkten Spalte. Diese Spalte ist nie Null. Eine leere Zeichenfolge, falls unbenannt. |
TABLE_NAME |
STRING |
Der Name der Tabelle der eingeschränkten Spalte. |
COLUMN_NAME |
STRING |
Der Name der Spalte. |
ORDINAL_POSITION |
INT64 |
Die ordinale Position der Spalte innerhalb des Schlüssels der Einschränkung, beginnend mit dem Wert 1 . |
POSITION_IN_UNIQUE_CONSTRAINT |
INT64 |
Für FOREIGN KEY s die ordinale Position der Spalte innerhalb der eindeutigen Einschränkung, beginnend mit dem Wert 1 . Bei anderen Einschränkungstypen ist diese Spalte null. |
CONSTRAINT_COLUMN_USAGE
Diese Tabelle enthält eine Zeile über jede Spalte, die von einer Einschränkung verwendet wird. Enthält die Spalten PRIMARY KEY
und UNIQUE
sowie die referenzierten Spalten von FOREIGN KEY
-Einschränkungen.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Der Name des Katalogs der Spaltentabelle. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Tabellenschemas. Diese Spalte ist nie Null. Eine leere Zeichenfolge, falls unbenannt. |
TABLE_NAME |
STRING |
Der Name der Tabelle der Spalte. |
COLUMN_NAME |
STRING |
Der Name der Spalte, die von der Einschränkung verwendet wird. |
CONSTRAINT_CATALOG |
STRING |
Der Name des Katalogs der Einschränkung. Immer ein leerer String. |
CONSTRAINT_SCHEMA |
STRING |
Der Name des Schemas der Einschränkung. Eine leere Zeichenfolge, falls unbenannt. |
CONSTRAINT_NAME |
STRING |
Der Name der Einschränkung. |
TABLE_SYNONYMS
In dieser Tabelle sind Informationen zu Synonyme für die Tabelle aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_NAME |
STRING |
Der 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. |
INDEXES
In dieser Zeile gefilterten Tabelle sind die Indexe in der 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 Zeilen in dieser Ansicht sehen. Alle anderen Hauptpersonen können nur Indexe sehen, die eine der folgenden Anforderungen erfüllen:
- Eine der Berechtigungen für die differenzierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
auf Spaltenebene für alle Spalten im Index gewährt. - Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
,UPDATE
oderDELETE
wird für die Tabelle mit dem Index für die aktuelle Datenbankrolle, für Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder fürpublic
gewährt.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Schemas. Eine leere Zeichenfolge, falls unbenannt. |
TABLE_NAME |
STRING |
Der Name der Tabelle. |
INDEX_NAME |
STRING |
Der Name des Index. Tabellen mit einer PRIMARY KEY -Spezifikation haben einen Pseudo-Indexeintrag, der mit dem Namen PRIMARY_KEY erzeugt wurde, wodurch die Felder des Primärschlüssels bestimmt werden können. |
INDEX_TYPE |
STRING |
Der Typ des Index. Der Typ ist INDEX oder PRIMARY_KEY . |
PARENT_TABLE_NAME |
STRING |
Sekundäre Indexe können in einer übergeordneten Tabelle verschränkt sein, wie unter Sekundären Index erstellen erläutert. Diese Spalte enthält den Namen der übergeordneten Tabelle oder einen leeren String, wenn der Index nicht verschränkt ist. |
IS_UNIQUE |
BOOL |
Gibt an, ob die Indexschlüssel einmalig sein müssen. |
IS_NULL_FILTERED |
BOOL |
Gibt an, ob der Index Einträge mit NULL -Werten enthält. |
INDEX_STATE |
STRING |
Der aktuelle Status des Index. Folgende Werte und zugehörige Status sind möglich:
|
SPANNER_IS_MANAGED |
BOOL |
TRUE , wenn der Index von Spanner verwaltet wird, andernfalls FALSE . Sekundäre Sicherungsindexe für Fremdschlüssel werden von Spanner verwaltet. |
INDEX_COLUMNS
In dieser zeilengefilterten Tabelle sind die Spalten in einem Index 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 Zeilen in dieser Ansicht sehen. Alle anderen Hauptpersonen können nur Indexe sehen, die eine der folgenden Anforderungen erfüllen:
- Eine der Berechtigungen für die differenzierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
auf Spaltenebene für alle Spalten im Index gewährt. - Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird für die Tabelle mit dem Index für die aktuelle Datenbankrolle, für Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder fürpublic
gewährt.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Schemas. Eine leere Zeichenfolge, falls unbenannt. |
TABLE_NAME |
STRING |
Der Name der Tabelle. |
INDEX_NAME |
STRING |
Der Name des Index. |
COLUMN_NAME |
STRING |
Der Name der Spalte. |
ORDINAL_POSITION |
INT64 |
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 STORING -Klausel eines Index angegeben werden). |
COLUMN_ORDERING |
STRING |
Die Reihenfolge innerhalb der Spalte. Der Wert ist ASC oder DESC bei Schlüsselspalten und NULL bei Spalten, die sich nicht auf Schlüssel beziehen (z. B. Spalten, die in der STORING -Klausel eines Index angegeben werden). |
IS_NULLABLE |
STRING |
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. |
SPANNER_TYPE |
STRING |
Der Datentyp der Spalte. |
COLUMN_OPTIONS
In dieser zeilenfiltrierten Tabelle sind die Spaltenoptionen in einer Tabelle 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 Zeilen in dieser Ansicht sehen. Alle anderen Hauptbevollmächtigten können nur Optionen für Spalten sehen, die eine der folgenden Anforderungen erfüllen:
- Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
direkt für die Spalte gewährt. - Eine der Berechtigungen für die detaillierte Zugriffssteuerung
SELECT
,INSERT
oderUPDATE
wird der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oderpublic
für die Tabelle gewährt, die die Spalte enthält.
Spaltenname | Typ | Beschreibung |
---|---|---|
TABLE_CATALOG |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Schemas. Der Name ist für das Standardschema leer und für andere Schemas nicht leer (z. B. INFORMATION_SCHEMA selbst).
Diese Spalte ist nie Null. |
TABLE_NAME |
STRING |
Der Name der Tabelle. |
COLUMN_NAME |
STRING |
Der Name der Spalte. |
OPTION_NAME |
STRING |
Eine SQL-Kennung, die die Option eindeutig identifiziert. Diese Kennung ist der Schlüssel der OPTIONS -Klausel in DDL.
|
OPTION_TYPE |
STRING |
Ein Datentypname, der der Typ dieses Optionswerts ist. |
OPTION_VALUE |
STRING |
Ein SQL-Literal, das den Wert dieser Option beschreibt. Der Wert dieser Spalte muss als Teil einer Abfrage analysiert werden können. Der Ausdruck, der beim Analysieren des Werts entsteht, muss in OPTION_TYPE umwandelbar sein. Diese Spalte ist nie Null. |
SEQUENCES
In dieser Tabelle sind die Metadaten der Sequenzen aufgeführt. SEQUENCES
wird basierend auf den Zugriffsberechtigungen für die detaillierte Zugriffssteuerung gefiltert, wenn ein Nutzer mit entsprechenden Berechtigungen eine Abfrage dazu ausführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
CATALOG |
STRING |
Der Name des Katalogs, der die Sequenz enthält. |
SCHEMA |
STRING |
Der Name des Schemas, das die Sequenz enthält. |
NAME |
STRING |
Der Name der Sequenz. |
DATA_TYPE |
STRING |
Der Typ der Sequenzwerte. Dabei wird der Datentyp INT64 verwendet. |
SEQUENCE_OPTIONS
Diese Tabelle enthält die Konfigurationsoptionen für Sequenzen. SEQUENCE_OPTIONS
wird basierend auf den Zugriffsberechtigungen für die detaillierte Zugriffssteuerung nach Zeilen gefiltert, wenn ein Nutzer mit entsprechenden Berechtigungen eine Abfrage ausführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
CATALOG |
STRING |
Der Name des Katalogs, der die Sequenz enthält. |
SCHEMA |
STRING |
Der Name des Schemas, das die Sequenz enthält. |
NAME |
STRING |
Der Name der Sequenz. |
OPTION_NAME |
STRING |
Der Name der Sequenzoption. |
OPTION_TYPE |
STRING |
Ein Datentypname, der der Typ dieses Optionswerts ist. |
OPTION_VALUE |
STRING |
Der Wert der Sequenzoption. Der Ausdruck, der beim Analysieren des Werts entsteht, muss eine Umwandlung in OPTION_TYPE zulassen. |
SPANNER_STATISTICS
In dieser Tabelle sind die verfügbaren Statistikpakete für die Abfrageoptimierung aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
CATALOG_NAME |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
SCHEMA_NAME |
STRING |
Der Name des Schemas. Der Name ist für das Standardschema leer und für andere Schemas nicht leer (z. B. INFORMATION_SCHEMA selbst).
Diese Spalte ist nie Null. |
PACKAGE_NAME |
STRING |
Der Name des Statistikpakets. |
ALLOW_GC |
BOOL |
FALSE , wenn das Statistikpaket von der automatischen Speicherbereinigung ausgenommen ist; andernfalls TRUE .
Dieses Attribut muss auf FALSE gesetzt sein, um in einem Hinweis oder über die Client API auf das Statistikpaket zu verweisen.
|
VIEWS
In dieser zeilenfiltrierten Tabelle sind die Ansichten in der 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 Zeilen in dieser Ansicht sehen. Alle anderen Prinzipale können nur Ansichten sehen, für die das Berechtigungsprivileg SELECT
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 |
---|---|---|
TABLE_CATALOG |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Schemas. Eine leere Zeichenfolge, falls unbenannt. |
TABLE_NAME |
STRING |
Der Name der Ansicht. |
VIEW_DEFINITION |
STRING |
Der SQL-Text der Abfrage, die die Ansicht definiert. |
SECURITY_TYPE |
STRING |
Der Sicherheitstyp der Ansicht. INVOKER oder DEFINER .
Weitere Informationen finden Sie unter Ansichten. |
ROLES
In dieser gefilterten Tabelle sind die definierten Datenbankrollen für die detaillierte Zugriffssteuerung aufgeführt, einschließlich Systemrollen. 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 Datenbankrollen sehen. Alle anderen Hauptkonten können nur Datenbankrollen sehen, für die ihnen entweder direkt oder durch Übernahme Zugriff gewährt wurde.
Spaltenname | Typ | Beschreibung |
---|---|---|
ROLE_NAME |
STRING |
Der Name der Datenbankrolle. |
IS_SYSTEM |
BOOL |
TRUE , wenn die Datenbankrolle eine Systemrolle ist, andernfalls FALSE . |
ROLE_GRANTEES
In dieser zeilengefilterten Tabelle sind alle Rollenmitgliedschaften aufgeführt, die allen Datenbankrollen explizit gewährt wurden. 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 die Rollenmitgliedschaften sehen, die der aktuellen Datenbankrolle oder einer Rolle gewährt wurden, deren Mitglied die aktuelle Datenbankrolle 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 |
---|---|---|
ROLE_NAME |
STRING |
Der Name der Datenbankrolle, in der diese Mitgliedschaft gewährt wird. |
GRANTEE |
STRING |
Der Name der Datenbankrolle, der diese Mitgliedschaft gewährt wird. |
CHANGE_STREAMS
In dieser zeilenfiltrierten Tabelle sind alle Änderungsstreams einer Datenbank aufgeführt. Außerdem wird angegeben, welche Streams die gesamte Datenbank und welche bestimmte Tabellen oder Spalten verfolgen. 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 Änderungsstreams sehen, für die das Berechtigungsobjekt SELECT
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 |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Der Name des Katalogs des Änderungsstreams. Immer ein leerer String. |
CHANGE_STREAM_SCHEMA |
STRING |
Der Name des Schemas dieses Änderungsstreams. Immer ein leerer String. |
CHANGE_STREAM_NAME |
STRING |
Der Name des Änderungsstreams. |
ALL |
BOOL |
TRUE , wenn dieser Änderungsstream die gesamte Datenbank erfasst.
FALSE , wenn dieser Änderungsstream bestimmte Tabellen oder Spalten erfasst. |
CHANGE_STREAM_TABLES
Diese nach Zeilen gefilterte Tabelle enthält Informationen zu Tabellen und den zugehörigen Änderungsstreams. Jede Zeile beschreibt eine Tabelle und einen Änderungsstream. 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 Zeilen für Änderungsstreams sehen, für die das SELECT
-Berechtigungsrecht der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
gewährt wurde.
Die Daten in CHANGE_STREAM_TABLES
enthalten nicht die impliziten Beziehungen zwischen Tabellen und Änderungsstreams, die die gesamte Datenbank verfolgen.
Spaltenname | Typ | Beschreibung |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Der Name des Katalogs des Änderungsstreams. Immer ein leerer String. |
CHANGE_STREAM_SCHEMA |
STRING |
Der Name des Schemas des Änderungsstreams. Immer ein leerer String. |
CHANGE_STREAM_NAME |
STRING |
Der Name des Änderungsstreams, auf den sich diese Zeile bezieht. |
TABLE_CATALOG |
STRING |
Der Name des Katalogs der Tabelle. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Schemas der Tabelle. Immer ein leerer String. |
TABLE_NAME |
STRING |
Der Name der Tabelle, auf die sich diese Zeile bezieht. |
ALL_COLUMNS |
BOOL |
TRUE , wenn der Änderungsstream dieser Zeile die gesamte Tabelle erfasst, auf die sich diese Zeile bezieht. Andernfalls FALSE . |
CHANGE_STREAM_COLUMNS
Diese zeilenfiltrierte Tabelle enthält Informationen zu Tabellenspalten und den Änderungsstreams, die sie beobachten. Jede Zeile beschreibt 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 Hauptkonten 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 |
STRING |
Der Name des Katalogs des Änderungsstreams. Immer ein leerer String. |
CHANGE_STREAM_SCHEMA |
STRING |
Der Name des Schemas des Änderungsstreams. Immer ein leerer String. |
CHANGE_STREAM_NAME |
STRING |
Der Name des Änderungsstreams. |
TABLE_CATALOG |
STRING |
Der Name des Katalogs der Tabelle. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Der Name des Schemas der Tabelle. Immer ein leerer String. |
TABLE_NAME |
STRING |
Der Name der Tabelle, auf die sich diese Zeile bezieht. |
COLUMN_NAME |
STRING |
Der Name der Spalte, auf die sich diese Zeile bezieht. |
CHANGE_STREAM_OPTIONS
Diese Tabelle mit Zeilenfilter enthält die Konfigurationsoptionen für Änderungsstreams.
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 Optionen 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 wird.
Spaltenname | Typ | Beschreibung |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Der Name des Katalogs des Änderungsstreams. Immer ein leerer String. |
CHANGE_STREAM_SCHEMA |
STRING |
Der Name des Schemas des Änderungsstreams. Immer ein leerer String. |
CHANGE_STREAM_NAME |
STRING |
Der Name des Änderungsstreams. |
OPTION_NAME |
STRING |
Der Name der Änderungsstream-Option. |
OPTION_TYPE |
STRING |
Der Datentyp der Änderungsstream-Option. |
OPTION_VALUE |
STRING |
Der Wert der Option „Stream ändern“. |
CHANGE_STREAM_PRIVILEGES
In dieser nach Zeilen gefilterten Tabelle sind alle Berechtigungen für die detaillierte Zugriffssteuerung aufgeführt, die für alle Änderungsstreams 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 Hauptpersonen 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 |
---|---|---|
CHANGE_STREAM_CATALOG
|
STRING
|
Der Name des Katalogs, der den Änderungsstream enthält (ein leerer String). |
CHANGE_STREAM_SCHEMA
|
STRING
|
Der Name des Schemas, das den Änderungsstream enthält (ein leerer String). |
CHANGE_STREAM_NAME
|
STRING
|
Der Name des Änderungsstreams. |
PRIVILEGE_TYPE
|
STRING
|
SELECT (die einzige Berechtigung, die für Änderungsstreams zulässig ist).
|
GRANTEE
|
STRING
|
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
ROUTINES
In dieser nach Zeilen gefilterten Tabelle sind alle Lesefunktionen für Änderungsstreams einer 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 Zeilen in dieser Ansicht sehen. Alle anderen Hauptrollen können nur Lesefunktionen für Änderungsstreams sehen, für die die Berechtigung für die detaillierte Zugriffssteuerung EXECUTE
der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
gewährt wurde.
Spaltenname | Typ | Beschreibung |
---|---|---|
SPECIFIC_CATALOG |
STRING |
Der Name des Katalogs der Routine. Immer ein leerer String. |
SPECIFIC_SCHEMA |
STRING |
Der Name des Schemas der Routine. Immer ein leerer String. |
SPECIFIC_NAME |
STRING |
Der Name der Routine. Er identifiziert die Routine eindeutig, auch wenn ihr Name überladen ist. |
ROUTINE_CATALOG |
STRING |
Der Name des Katalogs der Routine. Immer ein leerer String. |
ROUTINE_SCHEMA |
STRING |
Der Name des Schemas der Routine. Immer ein leerer String. |
ROUTINE_NAME |
STRING |
Der Name der Routine. (Bei Überlastung kann es zu Duplikaten kommen.) |
ROUTINE_TYPE |
STRING |
Der Typ der Routine (FUNCTION oder PROCEDURE ). Immer FUNCTION |
DATA_TYPE |
STRING |
Der vom Ablauf zurückgegebene Datentyp |
ROUTINE_BODY |
STRING |
Der Typ des Routine-Texts (SQL oder EXTERNAL ). |
ROUTINE_DEFINITION |
STRING |
Die Definition für die ROUTINE_BODY . |
SECURITY_TYPE |
STRING |
Der Sicherheitstyp der Routine. Immer INVOKER . |
ROUTINE_OPTIONS
Diese zeilenfiltrierte Tabelle enthält eine Zeile für jede Option für jede definierte Lesefunktion für Änderungsstreams.
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 Optionen für Lesefunktionen für Änderungsstreams sehen, für die das Berechtigungsobjekt EXECUTE
für die aktuelle Datenbankrolle, für Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder für public
gewährt wird.
Spaltenname | Typ | Beschreibung |
---|---|---|
SPECIFIC_CATALOG
|
STRING
|
Der Name des Katalogs der Routine. Immer ein leerer String. |
SPECIFIC_SCHEMA
|
STRING
|
Der Name des Schemas der Routine. Immer ein leerer String. |
SPECIFIC_NAME
|
STRING
|
Der Name der Routine. Damit wird die Routine bei einer Namensüberladung eindeutig identifiziert. |
OPTION_NAME
|
STRING
|
Eine SQL-Kennung, die die Option eindeutig identifiziert. |
OPTION_TYPE
|
STRING
|
Der Datentyp von OPTION_VALUE .
|
OPTION_VALUE
|
STRING
|
Ein SQL-Literal, das den Wert dieser Option beschreibt. Der Wert dieser Spalte muss als Teil einer Abfrage analysiert werden können. |
PARAMETERS
In dieser zeilenfiltrierten Tabelle werden die Argumente für jede Lesefunktion des Änderungsstreams definiert. Jede Zeile beschreibt ein Argument für eine Lesefunktion für Änderungsstreams.
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 Prinzipale 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 |
STRING |
Der Name des Katalogs der Routine. Immer ein leerer String. |
SPECIFIC_SCHEMA |
STRING |
Der Name des Schemas der Routine. Immer ein leerer String. |
SPECIFIC_NAME |
STRING |
Der Name der Routine. Damit wird die Routine bei einer Namensüberladung eindeutig identifiziert. |
ORDINAL_POSITION |
INT64 |
Die ordinale Position des Parameters in der Routine, beginnend mit dem Wert 1. |
PARAMETER_NAME |
STRING |
Name des Parameters. |
DATA_TYPE |
STRING |
Der Datentyp des Parameters. |
ROUTINE_PRIVILEGES
In dieser nach Zeilen gefilterten Tabelle sind alle Berechtigungen für die detaillierte Zugriffssteuerung aufgeführt, die für alle Lesefunktionen von Änderungsstreams 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 der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
für Lesefunktionen des Änderungsstreams gewährt wurden.
Spaltenname | Typ | Beschreibung |
---|---|---|
SPECIFIC_CATALOG |
STRING |
Der Name des Katalogs der Routine. Immer ein leerer String. |
SPECIFIC_SCHEMA |
STRING |
Der Name des Schemas der Routine. Immer ein leerer String. |
SPECIFIC_NAME |
STRING |
Der Name der Routine. Damit wird die Routine bei einer Namensüberladung eindeutig identifiziert. |
PRIVILEGE_TYPE |
STRING |
Immer EXECUTE .
|
GRANTEE |
STRING |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
ROLE_TABLE_GRANTS
In dieser nach Zeilen gefilterten Tabelle 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 der aktuellen Datenbankrolle und Rollen zugewiesen sind, in denen die aktuelle Datenbankrolle Mitglied ist, mit Ausnahme von public
.
Spaltenname | Typ | Beschreibung |
---|---|---|
GRANTOR |
STRING |
Nicht verwendet. Immer NULL . |
GRANTEE |
STRING |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
TABLE_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_NAME |
STRING |
Der Name der Tabelle oder Ansicht. |
PRIVILEGE_TYPE |
STRING |
Der Typ des Berechtigungstyps (SELECT , INSERT , UPDATE oder DELETE ). |
IS_GRANTABLE |
STRING |
Nicht verwendet. Immer NO . |
ROLE_COLUMN_GRANTS
In dieser nach Zeilen gefilterten Tabelle sind alle Berechtigungen für die detaillierte Zugriffssteuerung aufgeführt, die für alle Spalten einer 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 der aktuellen Datenbankrolle und Rollen gewährt wurden, in denen die aktuelle Datenbankrolle Mitglied ist, einschließlich public
.
Die Ansicht enthält die Berechtigungen SELECT
, INSERT
und UPDATE
, die die Spalte von der Tabelle oder Ansicht erbt, die die Spalte enthält.
Spaltenname | Typ | Beschreibung |
---|---|---|
GRANTOR |
STRING |
Nicht verwendet. Immer NULL . |
GRANTEE |
STRING |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
TABLE_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_SCHEMA |
STRING |
Nicht verwendet. Immer ein leerer String. |
TABLE_NAME |
STRING |
Der Name der Tabelle oder Ansicht, die die Spalte enthält. |
COLUMN_NAME |
STRING |
Der Name der Spalte, für die das Berechtigung gewährt wird. |
PRIVILEGE_TYPE |
STRING |
Der Typ des Berechtigungstyps (SELECT , INSERT oder UPDATE ). |
IS_GRANTABLE |
STRING |
Nicht verwendet. Immer NO . |
ROLE_CHANGE_STREAM_GRANTS
In dieser nach Zeilen gefilterten Tabelle sind die SELECT
-Berechtigungen aufgeführt, die allen Datenbankrollen, einschließlich public
, für alle Änderungsstreams gewährt wurden. 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 Ä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 |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
CHANGE_STREAM_SCHEMA |
STRING |
Der Name des Schemas, das den Änderungsstream enthält. |
CHANGE_STREAM_NAME |
STRING |
Der Name des Änderungsstreams. |
PRIVILEGE_TYPE |
STRING |
Der Typ der Berechtigung (nur SELECT ). |
GRANTEE |
STRING |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
ROLE_MODEL_GRANTS
In dieser nach Zeilen gefilterten Tabelle sind alle Berechtigungen für die detaillierte Zugriffssteuerung aufgeführt, die für alle Modelle 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 der aktuellen Datenbankrolle und Rollen zugewiesen sind, in denen die aktuelle Datenbankrolle Mitglied ist, mit Ausnahme von public
.
Spaltenname | Typ | Beschreibung |
---|---|---|
GRANTOR |
STRING |
Nicht verwendet. Immer NULL . |
GRANTEE |
STRING |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
MODEL_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
MODEL_SCHEMA |
STRING |
Nicht verwendet. Immer ein leerer String. |
MODEL_NAME |
STRING |
Der Name des Modells. |
PRIVILEGE_TYPE |
STRING |
Der Typ der Berechtigung (EXECUTE ). |
IS_GRANTABLE |
STRING |
Nicht verwendet. Immer NO . |
ROLE_ROUTINE_GRANTS
In dieser nach Zeilen gefilterten Tabelle sind die EXECUTE
-Berechtigungen aufgeführt, die allen Datenbankrollen, einschließlich public
, für alle Lesefunktionen des Änderungsstreams gewährt wurden. 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 und Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, für Lesefunktionen des Änderungsstreams gewährt wurden. public
ist hiervon ausgenommen.
Spaltenname | Typ | Beschreibung |
---|---|---|
GRANTOR
|
STRING
|
Nicht verwendet. Immer NULL . |
GRANTEE
|
STRING
|
Der Name der Rolle, für die das Berechtigung gewährt wird. |
SPECIFIC_CATALOG
|
STRING
|
Der Name des Routinekatalogs. |
SPECIFIC_SCHEMA
|
STRING
|
Der Name des Routineschemas. |
SPECIFIC_NAME
|
STRING
|
Der Name der Routine. Damit wird die Routine bei einer Namensüberladung eindeutig identifiziert. |
PRIVILEGE_TYPE
|
STRING
|
Die Art der gewährten Berechtigung. Immer EXECUTE . |
IS_GRANTABLE
|
STRING
|
Nicht verwendet. Immer NO . |
MODELS
In dieser Tabelle sind alle Modelle einer Datenbank aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
MODEL_CATALOG |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
MODEL_SCHEMA |
STRING |
Der Name des Schemas dieses Modells. Immer ein leerer String. |
MODEL_NAME |
STRING |
Der Name des Modells. |
IS_REMOTE |
BOOL |
TRUE , wenn es sich um ein Remote-Modell handelt. FALSE , wenn es sich um ein verwaltetes Modell handelt. |
MODEL_OPTIONS
Diese Tabelle enthält die Konfigurationsoptionen für Modelle.
Spaltenname | Typ | Beschreibung |
---|---|---|
MODEL_CATALOG |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
MODEL_SCHEMA |
STRING |
Der Name des Schemas dieses Modells. Immer ein leerer String. |
MODEL_NAME |
STRING |
Der Name des Modells. |
OPTION_NAME |
STRING |
Der Name der Modelloption. |
OPTION_TYPE |
STRING |
Der Datentyp der Modelloption. |
OPTION_VALUE |
STRING |
Der Wert der Modelloption. |
MODEL_COLUMNS
In dieser Tabelle sind die Spalten in einem Modell aufgeführt.
Spaltenname | Typ | Beschreibung |
---|---|---|
MODEL_CATALOG |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
MODEL_SCHEMA |
STRING |
Der Name des Schemas dieses Modells. Immer ein leerer String. |
MODEL_NAME |
STRING |
Der Name des Modells. |
COLUMN_KIND |
STRING |
Art der Modellspalte. Eine der folgenden Rollen: "INPUT" oder "OUTPUT" . |
COLUMN_NAME |
STRING |
Der Name der Spalte. |
DATA_TYPE |
STRING |
Der Standard-SQL-Datentyp der Spalte. |
ORDINAL_POSITION |
INT64 |
Die ordinale Position der Spalte, beginnend mit dem Wert 1, um die Reihenfolge der deklarierten Spalten beizubehalten. |
IS_EXPLICIT |
BOOL |
TRUE , wenn die Spalte explizit in der DDL angegeben wurde,FALSE , wenn die Spalte über den Endpunkt ermittelt wurde. |
MODEL_COLUMN_OPTIONS
Diese Tabelle enthält die Konfigurationsoptionen für Modellspalten.
Spaltenname | Typ | Beschreibung |
---|---|---|
MODEL_CATALOG |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
MODEL_SCHEMA |
STRING |
Der Name des Schemas dieses Modells. Immer ein leerer String. |
MODEL_NAME |
STRING |
Der Name des Modells. |
COLUMN_KIND |
STRING |
Art der Modellspalte. Eine der folgenden Rollen: "INPUT" oder "OUTPUT" . |
COLUMN_NAME |
STRING |
Der Name der Spalte. |
OPTION_NAME |
STRING |
Der Name der Option für die Modellspalte. |
OPTION_TYPE |
STRING |
Der Datentyp der Option „Modellspalte“. |
OPTION_VALUE |
STRING |
Der Wert der Option für die Modellspalte. |
MODEL_PRIVILEGES
In dieser nach Zeilen gefilterten Tabelle sind alle Berechtigungen aufgeführt, die auf Modellebene für Datenbankrollen 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 Hauptpersonen können nur Berechtigungen für Modelle sehen, für die der aktuellen Datenbankrolle, Rollen, in denen die aktuelle Datenbankrolle Mitglied ist, oder public
die Berechtigung EXECUTE
„Detaillierte Zugriffssteuerung“ gewährt wurde.
Spaltenname | Typ | Beschreibung |
---|---|---|
MODEL_CATALOG |
STRING |
Nicht verwendet. Immer ein leerer String. |
MODEL_SCHEMA |
STRING |
Nicht verwendet. Immer ein leerer String. |
MODEL_NAME |
STRING |
Der Name des Modells, für das Berechtigungen für die detaillierte Zugriffssteuerung gewährt werden. |
PRIVILEGE_TYPE |
STRING |
EXECUTE > |
GRANTEE |
STRING |
Der Name der Datenbankrolle, der dieses Berechtigung gewährt wird. |
PROPERTY_GRAPHS
In dieser zeilenfiltrierten Tabelle sind die Property-Graphen in der 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 Zeilen in dieser Ansicht sehen. Alle anderen Hauptkonten können nur dann Property-Diagramme sehen, wenn sie die Anforderungen erfüllen, um alle Tabellen zu sehen, die zum Definieren dieser Diagramme verwendet werden.
Spaltenname | Typ | Beschreibung |
---|---|---|
PROPERTY_GRAPH_CATALOG |
STRING |
Der Name des Katalogs. Immer ein leerer String. |
PROPERTY_GRAPH_SCHEMA |
STRING |
Der Name des Schemas. Eine leere Zeichenfolge, falls unbenannt. |
PROPERTY_GRAPH_NAME |
STRING |
Der Name der Attributgrafik. |
PROPERTY_GRAPH_METADATA_JSON |
JSON |
Die Definition der Property-Graph im JSON-Format. |
Die Spalte PROPERTY_GRAPH_METADATA_JSON
enthält ein PropertyGraph
-JSON-Objekt mit folgender Definition:
Name des JSON-Objekts | Feldname | JSON-Typ | Beschreibung |
---|---|---|---|
PropertyGraph |
catalog |
string |
Der Name des Katalogs. Immer ein leerer String. |
schema |
string |
Der Name des Schemas. Eine leere Zeichenfolge, falls unbenannt. | |
name |
string |
Der Name der Attributgrafik. | |
nodeTables |
array<object> |
Eine Liste von GraphElementTable -Objekten für Knoten. |
|
edgeTables |
array<object> |
Eine Liste von GraphElementTable -Objekten für Kanten. |
|
labels |
array<object> |
Eine Liste mit GraphElementLabel -Objekten. |
|
propertyDeclarations |
array<object> |
Eine Liste mit GraphPropertyDeclaration -Objekten. |
|
GraphElementTable |
name |
string |
Der Name der Tabelle mit den Diagrammelementen. |
kind |
string |
NODE oder EDGE . |
|
baseCatalogName |
string |
Der Name des Katalogs, der die Basistabelle enthält. | |
baseSchemaName |
string |
Der Name des Schemas, das die Basistabelle enthält. | |
baseTableName |
string |
Der Name der Eingabetabelle, aus der Elemente erstellt werden. | |
keyColumns |
array<string> |
Die Spaltennamen, die den Elementschlüssel bilden. | |
labelNames |
array<string> |
Die Labelnamen, die mit dieser Elementtabelle verknüpft sind. | |
propertyDefinitions |
array<object> |
Eine Liste mit GraphPropertyDefinition -Objekten. |
|
sourceNodeTable |
object |
Ein GraphNodeTableReference -Objekt. Existiert nur, wenn kind EDGE ist. |
|
destinationNodeTable |
object |
Ein GraphNodeTableReference -Objekt. Existiert nur, wenn kind EDGE ist. |
|
GraphNodeTableReference |
nodeTableName |
string |
Der Name der Tabelle mit den Diagrammelementen. |
edgeTableColumns |
array<string> |
Der Name der Spalten, die den Quell- und Zielschlüsseln für die Kanten zugeordnet sind. | |
nodeTableColumns |
array<string> |
Der Name der Spalten, die mit den Quell- und Zielschlüsseln für die Knoten verknüpft sind. | |
GraphElementLabel |
name |
string |
Der Name des Labels. |
propertyDeclarationNames |
array<string> |
Die Namen der Unterkünfte, die mit diesem Label verknüpft sind. | |
GraphPropertyDeclaration |
name |
string |
Der Name der Unterkunft. |
type |
string |
Der Typ der Unterkunft. | |
GraphPropertyDefinition |
propertyDeclarationName |
string |
Der Name der Unterkunft. |
valueExpressionSql |
string |
Der Ausdruck, der die Property definiert. |
Beispiele
Gibt Informationen zu allen Tabellen im Nutzerschema zurück:
SELECT
t.table_name,
t.parent_table_name
FROM
information_schema.tables AS t
WHERE
t.table_catalog = ''
AND
t.table_schema = ''
ORDER BY
t.table_catalog,
t.table_schema,
t.table_name
Gibt den Namen aller Tabellen im INFORMATION_SCHEMA zurück:
SELECT
t.table_name
FROM
information_schema.tables AS t
WHERE
t.table_schema = "SPANNER_SYS"
Informationen zu den Spalten in der Nutzertabelle MyTable
zurückgeben:
SELECT
t.column_name,
t.spanner_type,
t.is_nullable
FROM
information_schema.columns AS t
WHERE
t.table_catalog = ''
AND
t.table_schema = ''
AND
t.table_name = 'MyTable'
ORDER BY
t.table_catalog,
t.table_schema,
t.table_name,
t.ordinal_position
Gibt Informationen zur standardmäßig führenden Region für die Datenbank zurück. Wenn nicht die standardmäßige führende Region festgelegt ist, werden leere Werte zurückgegeben.
SELECT
s.option_name,
s.option_value
FROM
information_schema.database_options s
WHERE
s.option_name = 'default_leader'
Gibt Informationen zu allen Indexen im Nutzerschema zurück:
SELECT
t.table_name,
t.index_name,
t.parent_table_name
FROM
information_schema.indexes AS t
WHERE
t.table_catalog = ''
AND
t.table_schema = ''
AND
t.index_type != 'PRIMARY_KEY'
ORDER BY
t.table_catalog,
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_catalog = ''
AND
t.table_schema = ''
Gibt die aktuellen Datenbankoptionen im Optimierungstool zurück:
SELECT
s.option_name,
s.option_value
FROM
information_schema.database_options s
WHERE
s.schema_name=''
AND s.option_name IN ('optimizer_version',
'optimizer_statistics_package')
Gibt alle verfügbaren Statistikpakete zurück:
SELECT
*
FROM
information_schema.spanner_statistics;
Alle Sequenzen zurückgeben:
SELECT
*
FROM
information_schema.sequences;
Alle Sequenzoptionen für die Sequenz „MeineSequenz“ zurückgeben
SELECT
*
FROM
information_schema.sequence_options WHERE name="MySequence";
Die Namen aller Property-Graphen und ihre Definitionen zurückgeben:
SELECT
property_graph_name,
property_graph_metadata_json
FROM
information_schema.property_graphs
Die Namen aller Property-Graphen zusammen mit ihren Labels und Properties zurückgeben:
SELECT
property_graph_name,
property_graph_metadata_json.labels,
property_graph_metadata_json.propertyDeclarations
FROM
information_schema.property_graphs
Nächste Schritte
- Informieren Sie sich über die verfügbaren Tools zur Überprüfung, mit denen Sie Datenbankprobleme untersuchen können.