Lo schema delle informazioni è uno schema integrato comune a tutti i database Spanner. Puoi eseguire query SQL sulle tabelle in INFORMATION_SCHEMA
per recuperare i metadati dello schema per un database.
Ad esempio, la seguente query recupera i nomi di tutte le tabelle definite dall'utente in un database:
SELECT
table_name
FROM
information_schema.tables
WHERE
table_schema = ''
Gli utenti con un controllo dell'accesso granulare vedono risultati filtrati per alcune tabelle INFORMATION_SCHEMA
in base al loro ruolo del database. Per ulteriori informazioni, consulta Informazioni sul controllo dell'accesso granulare.
Utilizzo
Le tabelle INFORMATION_SCHEMA
sono disponibili solo tramite le interfacce SQL, ad esempio:
- API
executeQuery
- Il comando
gcloud spanner databases execute-sql
- la pagina Spanner Studio di un database nella console Google Cloud
Altri metodi di lettura singoli non supportano INFORMATION_SCHEMA
.
Alcune note aggiuntive sull'utilizzo di INFORMATION_SCHEMA
:
- Le query su
INFORMATION_SCHEMA
possono essere utilizzate in una transazione di sola lettura, ma non in una transazione di lettura/scrittura. - Le query relative a
INFORMATION_SCHEMA
possono utilizzare limiti di timestamp elevati, limitati o di inattività esatta. - Se utilizzi un database con dialetti PostgreSQL, consulta Schema di informazioni per i database di dialetti PostgreSQL.
- Se sei un utente con controllo dell'accesso granulare, le tabelle
INFORMATION_SCHEMA
vengono filtrate in modo da mostrare solo gli elementi dello schema a cui hai accesso.
Filtri per righe nelle tabelle information_schema
Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
(o ai membri di quel ruolo) possono visualizzare tutte le righe in tutte le tabelle information_schema. Per altre entità, per alcune tabelle, le righe vengono filtrate in base al ruolo attuale del database. Le descrizioni delle tabelle e delle viste nelle sezioni seguenti indicano in che modo viene applicato il filtro delle righe a ogni tabella e vista.
Tabelle in INFORMATION_SCHEMA
Le seguenti sezioni descrivono le tabelle nella sezione INFORMATION_SCHEMA
per i database di dialetti SQL di Google.
SCHEMATA
La tabella INFORMATION_SCHEMA.SCHEMATA
elenca gli schemi presenti nel database. Includono lo schema delle informazioni e gli schemi denominati, che contengono le tabelle definite.
Nome colonna | Tipo | Descrizione |
---|---|---|
CATALOG_NAME |
STRING |
Il nome del catalogo. Questa colonna esiste per la compatibilità con le tabelle dello schema di informazioni standard SQL. Questa colonna è sempre una stringa vuota. |
SCHEMA_NAME |
STRING |
Il nome dello schema. Nome per gli schemi denominati o "" per lo schema predefinito. |
PROTO_BUNDLE |
STRING |
Se il database contiene istruzioni per il bundle proto, questa colonna fornisce informazioni sul bundle proto utilizzato nello schema. Questa colonna è NULL se non esiste un bundle proto nel database. |
DATABASE_OPTIONS
Questa tabella elenca le opzioni impostate nel database.
Nome colonna | Tipo | Descrizione |
---|---|---|
CATALOG_NAME |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
SCHEMA_NAME |
STRING |
Il nome dello schema. Una stringa vuota, se senza nome. |
OPTION_NAME |
STRING |
Il nome dell'opzione di database. |
OPTION_TYPE |
STRING |
Il tipo di dati dell'opzione di database. |
OPTION_VALUE |
STRING |
Il valore dell'opzione di database. |
TABLES
Questa tabella con filtri di riga elenca le tabelle e le viste nel database. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo le tabelle che soddisfano uno dei seguenti requisiti:
-
I privilegi di controllo dell'accesso granulare
SELECT
,INSERT
,UPDATE
oDELETE
nella tabella vengono concessi al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure apublic
. - I privilegi
SELECT
,INSERT
oUPDATE
vengono concessi per qualsiasi colonna della tabella al ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro oppure apublic
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_NAME |
STRING |
Nome della tabella, visualizzazione o sinonimo. |
TABLE_TYPE |
STRING |
Il tipo di tabella. Per le tabelle ha il valore
BASE TABLE ; per le viste ha il valore VIEW ;
per i sinonimi ha il valore SYNONYM . |
PARENT_TABLE_NAME |
STRING |
Il nome della tabella padre se questa tabella è con interleaving, altrimenti NULL . |
ON_DELETE_ACTION |
STRING |
Questo valore è impostato su CASCADE o NO ACTION per le tabelle con interleaving e su NULL per gli altri tipi. Per ulteriori informazioni, vedi
le istruzioni
TABLE. |
SPANNER_STATE |
STRING |
Una tabella può passare attraverso più stati durante la creazione, se sono previste operazioni collettive. Ad esempio, quando la tabella viene creata con una chiave esterna che richiede il backfill dei suoi indici. Gli stati possibili sono:
|
INTERLEAVE_TYPE |
STRING |
Il testo dell'espressione che indica se esiste una relazione padre-figlio tra questa tabella e la tabella in cui è interlacciata.
I valori possibili sono:
|
ROW_DELETION_POLICY_EXPRESSION |
STRING |
Il testo dell'espressione che definisce il criterio di eliminazione delle righe della tabella.
Ad esempio, OLDER_THAN(CreatedAt, INTERVAL 1 DAY) o
OLDER_THAN(ExpiredDate, INTERVAL 0 DAY) .
|
COLUMNS
Questa tabella con filtri di riga elenca le colonne di una tabella. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare solo le colonne che soddisfano uno dei seguenti requisiti:
- Tutti i privilegi di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
vengono concessi direttamente nella colonna al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure apublic
. - Viene concesso qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
nella tabella contenente la colonna del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o apublic
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_NAME |
STRING |
Il nome della tabella. |
COLUMN_NAME |
STRING |
Il nome della colonna. |
ORDINAL_POSITION |
INT64 |
La posizione ordinale della colonna nella tabella, che inizia con un valore pari a 1. |
COLUMN_DEFAULT |
STRING |
Una rappresentazione stringa dell'espressione SQL per il valore predefinito della colonna.
Nota: prima di marzo 2022, |
DATA_TYPE |
STRING |
Incluso per soddisfare lo standard SQL. Sempre NULL . Vedi la
colonna SPANNER_TYPE |
IS_NULLABLE |
STRING |
Una stringa che indica se alla colonna è possibile assegnare valori null. In conformità
con lo standard SQL, la stringa è YES o
NO , anziché un valore booleano. |
SPANNER_TYPE |
STRING |
Il tipo di dati della colonna. |
IS_GENERATED |
STRING |
Una stringa che indica se la colonna è stata generata. La stringa è
ALWAYS per una colonna generata o NEVER
per una colonna non generata. |
GENERATION_EXPRESSION |
STRING |
Una stringa che rappresenta l'espressione SQL di una colonna generata.
NULL se la colonna non è una colonna generata. |
IS_STORED |
STRING |
Una stringa che indica se la colonna generata è archiviata.
La stringa è sempre YES per le colonne generate e NULL per le colonne non generate. |
SPANNER_STATE |
STRING |
Stato attuale della colonna. Una nuova colonna generata archiviata aggiunta a una tabella esistente può passare attraverso più stati osservabili dall'utente prima di essere completamente utilizzabile. I valori possibili sono:
|
COLUMN_PRIVILEGES
Questa tabella filtrata di righe elenca tutti i privilegi concessi a livello di colonna a qualsiasi ruolo del database, tra cui public
. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa visualizzazione. Tutte le altre entità possono vedere i privilegi solo per le colonne che soddisfano
uno dei seguenti requisiti:
- Tutti i privilegi di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
vengono concessi direttamente nella colonna al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure apublic
. - Viene concesso qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
nella tabella contenente la colonna del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o apublic
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_NAME |
STRING |
Il nome della tabella che contiene la colonna dei privilegi. |
COLUMN_NAME |
STRING |
Il nome della colonna con privilegi. |
PRIVILEGE_TYPE |
STRING |
SELECT , INSERT , UPDATE |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso il privilegio. |
TABLE_PRIVILEGES
Questa tabella filtrata di righe elenca tutti i privilegi concessi a livello di tabella ai
ruoli del database, tra cui public
.
Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare i privilegi solo per le tabelle a cui viene concesso uno qualsiasi dei privilegi di controllo dell'accesso dell'accesso granulare SELECT
, INSERT
, UPDATE
o DELETE
al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_NAME |
STRING |
Il nome della tabella in cui vengono concessi i privilegi di controllo granulare degli accessi. |
PRIVILEGE_TYPE |
STRING |
Uno tra SELECT , INSERT , UPDATE
e DELETE |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso il privilegio. |
TABLE_CONSTRAINTS
Questa tabella contiene una riga per ogni vincolo definito per le tabelle nel database.
Nome colonna | Tipo | Descrizione |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
È sempre una stringa emptry. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema del vincolo. Una stringa vuota, se senza nome. |
CONSTRAINT_NAME |
STRING |
Il nome del vincolo. |
TABLE_CATALOG |
STRING |
Il nome del catalogo della tabella vincolata. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema della tabella vincolata. Una stringa vuota, se senza nome. |
TABLE_NAME |
STRING |
Il nome della tabella vincolata. |
CONSTRAINT_TYPE |
STRING |
Il tipo di vincolo. I valori possibili sono:
|
IS_DEFERRABLE |
STRING |
Sempre NO . |
INITIALLY_DEFERRED |
STRING |
Sempre NO . |
ENFORCED |
STRING |
Sempre YES . |
CONSTRAINT_TABLE_USAGE
Questa tabella elenca le tabelle che definiscono o vengono utilizzate dai vincoli. Include le tabelle che definiscono i vincoli PRIMARY KEY
e UNIQUE
. Include anche le tabelle di riferimento delle definizioni di FOREIGN KEY
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Il nome del catalogo della tabella vincolata. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema della tabella vincolata. Una stringa vuota, se senza nome. |
TABLE_NAME |
STRING |
Il nome della tabella vincolata. |
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo del vincolo. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema del vincolo. Una stringa vuota, se senza nome. |
CONSTRAINT_NAME |
STRING |
Il nome del vincolo. |
REFERENTIAL_CONSTRAINTS
Questa tabella contiene una riga relativa a ogni vincolo FOREIGN KEY
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo di FOREIGN KEY. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema della CHIAVE FOREIGN. Una stringa vuota, se senza nome. |
CONSTRAINT_NAME |
STRING |
Il nome della CHIAVE FOREIGN. |
UNIQUE_CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo del vincolo PRIMARY KEY o UNIQUE a cui fa riferimento FOREIGN KEY. Sempre una stringa vuota. |
UNIQUE_CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema del vincolo PRIMARY KEY o UNIQUE a cui fa riferimento la FOREIGN KEY. Una stringa vuota, se senza nome. |
UNIQUE_CONSTRAINT_NAME |
STRING |
Il nome del vincolo PRIMARY KEY o UNIQUE a cui fa riferimento FOREIGN KEY. |
MATCH_OPTION |
STRING |
Sempre SIMPLE . |
UPDATE_RULE |
STRING |
Sempre NO ACTION . |
DELETE_RULE |
STRING |
CASCADE o NO ACTION . |
SPANNER_STATE |
STRING |
Stato attuale della chiave esterna. Spanner non inizia ad applicare il vincolo finché non vengono creati e sottoposti a backfill gli indici di supporto della chiave esterna. Quando gli indici sono pronti, Spanner inizia ad applicare il vincolo per le nuove transazioni mentre convalida i dati esistenti.
I valori possibili e gli stati che rappresentano sono:
|
CHECK_CONSTRAINTS
La tabella information_schema.CHECK_CONSTRAINTS
contiene una riga relativa a ogni
vincolo CHECK
definito dalla parola chiave CHECK
o NOT NULL
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo del vincolo. Questa colonna non è mai nulla, ma sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema del vincolo. Una stringa vuota, se senza nome. |
CONSTRAINT_NAME |
STRING |
Il nome del vincolo. Questa colonna non è mai nulla. Se non specificato esplicitamente nella definizione dello schema, viene assegnato un nome definito dal sistema. |
CHECK_CLAUSE |
STRING |
Le espressioni del vincolo CHECK . Questa colonna non è mai nulla. |
SPANNER_STATE |
STRING |
Lo stato attuale del vincolo CHECK . Questa colonna non è mai nulla. Gli stati possibili sono i seguenti:
|
KEY_COLUMN_USAGE
Questa tabella con filtro di riga contiene una riga per ogni colonna delle tabelle di TABLE_CONSTRAINTS
che sono vincolate come chiavi da un vincolo PRIMARY KEY
, FOREIGN
KEY
o UNIQUE
. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare solo le colonne che soddisfano i seguenti criteri:
- Tutti i privilegi di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
vengono concessi direttamente nella colonna al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure apublic
. - Viene concesso qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
nella tabella contenente la colonna del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o apublic
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo del vincolo. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema del vincolo. Questa colonna non è mai nulla. Una stringa vuota, se senza nome. |
CONSTRAINT_NAME |
STRING |
Il nome del vincolo. |
TABLE_CATALOG |
STRING |
Il nome del catalogo della colonna vincolata. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema della colonna vincolata. Questa colonna non è mai nulla. Una stringa vuota, se senza nome. |
TABLE_NAME |
STRING |
Il nome della tabella della colonna vincolata. |
COLUMN_NAME |
STRING |
Il nome della colonna. |
ORDINAL_POSITION |
INT64 |
La posizione ordinale della colonna all'interno della chiave del vincolo, che inizia con un valore 1 . |
POSITION_IN_UNIQUE_CONSTRAINT |
INT64 |
Per FOREIGN KEY , la posizione ordinale della colonna all'interno del vincolo univoco, che inizia con il valore 1 . Questa colonna è nulla per altri tipi di vincoli. |
CONSTRAINT_COLUMN_USAGE
Questa tabella contiene una riga relativa a ogni colonna utilizzata da un vincolo. Include le colonne PRIMARY KEY
e UNIQUE
, oltre alle colonne di riferimento dei vincoli FOREIGN KEY
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Il nome del catalogo della tabella a colonne. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema della tabella a colonne. Questa colonna non è mai nulla. Una stringa vuota, se senza nome. |
TABLE_NAME |
STRING |
Il nome della tabella della colonna. |
COLUMN_NAME |
STRING |
Il nome della colonna utilizzata dal vincolo. |
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo del vincolo. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema del vincolo. Una stringa vuota, se senza nome. |
CONSTRAINT_NAME |
STRING |
Il nome del vincolo. |
TABLE_SYNONYMS
In questa tabella sono elencate le informazioni sui sinonimi per la tabella.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_NAME |
STRING |
Il nome della tabella. |
SYNONYM_CATALOG |
STRING |
Il nome del catalogo per il sinonimo. |
SYNONYM_SCHEMA |
STRING |
Il nome dello schema per il sinonimo. |
SYNONYM_TABLE_NAME |
STRING |
Il nome della tabella per il sinonimo. |
INDEXES
Questa tabella con filtri di riga elenca gli indici nel database. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo gli indici che soddisfano uno dei seguenti requisiti:
- Tutti i privilegi di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
vengono concessi a livello di colonna su tutte le colonne nell'indice del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro, o apublic
. - Tutti i privilegi di controllo dell'accesso granulare
SELECT
,INSERT
,UPDATE
oDELETE
vengono concessi nella tabella contenente l'indice del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o perpublic
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema. Una stringa vuota, se senza nome. |
TABLE_NAME |
STRING |
Il nome della tabella. |
INDEX_NAME |
STRING |
Il nome dell'indice. Le tabelle con una specifica PRIMARY KEY hanno una voce di pseudo indice generata con il nome PRIMARY_KEY , che consente di determinare i campi della chiave primaria. |
INDEX_TYPE |
STRING |
Il tipo di indice. Il tipo è INDEX o
PRIMARY_KEY . |
PARENT_TABLE_NAME |
STRING |
Gli indici secondari possono essere con interleaving in una tabella padre, come discusso in Creazione di un indice secondario. Questa colonna contiene il nome della tabella padre o una stringa vuota se l'indice non è con interleaving. |
IS_UNIQUE |
BOOL |
Indica se le chiavi di indice devono essere univoche. |
IS_NULL_FILTERED |
BOOL |
Se l'indice include voci con valori NULL . |
INDEX_STATE |
STRING |
Stato attuale dell'indice. I valori possibili e gli stati che rappresentano sono:
|
SPANNER_IS_MANAGED |
BOOL |
TRUE se l'indice è gestito da Spanner. In caso contrario,
FALSE . Gli indici di supporto secondari per le chiavi esterne sono gestiti da Spanner. |
INDEX_COLUMNS
Questa tabella con filtri di riga elenca le colonne in un indice. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo gli indici che soddisfano uno dei seguenti requisiti:
- Tutti i privilegi di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
vengono concessi a livello di colonna su tutte le colonne nell'indice del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro, o apublic
. - Tutti i privilegi di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
vengono concessi nella tabella contenente l'indice del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o apublic
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema. Una stringa vuota, se senza nome. |
TABLE_NAME |
STRING |
Il nome della tabella. |
INDEX_NAME |
STRING |
Il nome dell'indice. |
COLUMN_NAME |
STRING |
Il nome della colonna. |
ORDINAL_POSITION |
INT64 |
La posizione ordinale della colonna nell'indice (o chiave primaria), che inizia con un valore pari a 1. Questo valore è NULL per
le colonne non chiave (ad esempio, le colonne specificate nella
clausola STORING
di un indice). |
COLUMN_ORDERING |
STRING |
L'ordine della colonna. Il valore è ASC o DESC per le colonne chiave e NULL per le colonne non chiave (ad esempio, le colonne specificate nella clausola STORING di un indice). |
IS_NULLABLE |
STRING |
Una stringa che indica se alla colonna è possibile assegnare valori null. In
conforme allo standard SQL, la stringa è YES o
NO ,
anziché un valore booleano. |
SPANNER_TYPE |
STRING |
Il tipo di dati della colonna. |
COLUMN_OPTIONS
Questa tabella con filtri di riga elenca le opzioni delle colonne in una tabella. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare le opzioni solo per le colonne che soddisfano uno dei seguenti requisiti:
- Tutti i privilegi di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
vengono concessi direttamente nella colonna al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure apublic
. - Viene concesso qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
nella tabella contenente la colonna del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o apublic
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema. Il nome è vuoto per lo schema predefinito e non è vuoto per gli altri schemi (ad esempio, lo stesso INFORMATION_SCHEMA ).
Questa colonna non è mai nulla. |
TABLE_NAME |
STRING |
Il nome della tabella. |
COLUMN_NAME |
STRING |
Il nome della colonna. |
OPTION_NAME |
STRING |
Un identificatore SQL che identifica in modo univoco l'opzione. Questo identificatore
è la chiave della clausola OPTIONS nel DDL.
|
OPTION_TYPE |
STRING |
Nome del tipo di dati che rappresenta il tipo di questo valore dell'opzione. |
OPTION_VALUE |
STRING |
Un valore letterale SQL che descrive il valore di questa opzione. Il valore di questa colonna deve essere analizzabile come parte di una query. L'espressione risultante dall'analisi del valore deve essere trasmettibile a OPTION_TYPE . Questa colonna non è mai nulla. |
SEQUENCES
Questa tabella elenca i metadati delle sequenze. SEQUENCES
viene filtrato per righe in base a privilegi di accesso granulari, se un utente con privilegi di accesso granulari sta eseguendo query su questo elemento.
Nome colonna | Tipo | Descrizione |
---|---|---|
CATALOG |
STRING |
Il nome del catalogo contenente la sequenza. |
SCHEMA |
STRING |
Il nome dello schema contenente la sequenza. |
NAME |
STRING |
Il nome della sequenza. |
DATA_TYPE |
STRING |
Il tipo dei valori della sequenza. Utilizza il tipo di dati INT64 . |
SEQUENCE_OPTIONS
Questa tabella contiene le opzioni di configurazione per le sequenze. SEQUENCE_OPTIONS
viene applicato un filtro per riga in base a privilegi di accesso granulari se un utente con
privilegi di accesso granulare esegue query.
Nome colonna | Tipo | Descrizione |
---|---|---|
CATALOG |
STRING |
Il nome del catalogo contenente la sequenza. |
SCHEMA |
STRING |
Il nome dello schema contenente la sequenza. |
NAME |
STRING |
Il nome della sequenza. |
OPTION_NAME |
STRING |
Il nome dell'opzione della sequenza. |
OPTION_TYPE |
STRING |
Nome del tipo di dati che rappresenta il tipo di questo valore dell'opzione. |
OPTION_VALUE |
STRING |
Il valore dell'opzione di sequenza. L'espressione risultante dall'analisi del valore deve consentire la trasmissione a OPTION_TYPE . |
SPANNER_STATISTICS
Questa tabella elenca i pacchetti di statistiche disponibili per l'ottimizzazione delle query.
Nome colonna | Tipo | Descrizione |
---|---|---|
CATALOG_NAME |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
SCHEMA_NAME |
STRING |
Il nome dello schema. Il nome è vuoto per lo schema predefinito e non è vuoto per gli altri schemi (ad esempio, lo stesso INFORMATION_SCHEMA ).
Questa colonna non è mai nulla. |
PACKAGE_NAME |
STRING |
Il nome del pacchetto di statistiche. |
ALLOW_GC |
BOOL |
FALSE se il pacchetto di statistiche è esente dalla garbage collection; in caso contrario, TRUE .
Questo attributo deve essere impostato su FALSE per poter fare riferimento al pacchetto di statistiche in un suggerimento o tramite l'API client.
|
VIEWS
Questa tabella con filtro di righe elenca le viste nel database. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le viste per cui viene concesso il privilegio di controllo dell'accesso granulare SELECT
al ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema. Una stringa vuota, se senza nome. |
TABLE_NAME |
STRING |
Il nome della vista. |
VIEW_DEFINITION |
STRING |
Il testo SQL della query che definisce la vista. |
SECURITY_TYPE |
STRING |
Il tipo di sicurezza della vista. INVOKER o DEFINER .
Per ulteriori informazioni, consulta Informazioni sulle viste. |
ROLES
Questa tabella filtrata di righe elenca i ruoli di database definiti per il controllo dell'accesso granulare, inclusi i ruoli di sistema. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutti i ruoli del database. Tutte le altre entità possono vedere solo i ruoli di database a cui è stato concesso l'accesso direttamente o tramite ereditarietà.
Nome colonna | Tipo | Descrizione |
---|---|---|
ROLE_NAME |
STRING |
Il nome del ruolo del database. |
IS_SYSTEM |
BOOL |
TRUE se il ruolo del database è un
ruolo di sistema;
FALSE in caso contrario. |
ROLE_GRANTEES
Questa tabella filtrata di righe elenca tutte le appartenenze ai ruoli concesse in modo esplicito a tutti
i ruoli del database. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le appartenenze ai ruoli concesse al ruolo di database attuale o a un ruolo di cui il ruolo attuale è membro.
Poiché tutti i ruoli del database appartengono al ruolo pubblico, i risultati omettono i record per l'appartenenza implicita al ruolo pubblico.
Nome colonna | Tipo | Descrizione |
---|---|---|
ROLE_NAME |
STRING |
Il nome del ruolo del database in cui viene concessa l'appartenenza. |
GRANTEE |
STRING |
Il nome del ruolo del database a cui è concessa l'appartenenza. |
CHANGE_STREAMS
Questa tabella con filtro di righe elenca tutti i modifiche in tempo reale di un database e note che monitorano l'intero database rispetto a tabelle o colonne specifiche. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono vedere solo i flussi di modifiche in cui viene concesso il privilegio di controllo dell'accesso granulare SELECT
al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Il nome del catalogo del flusso di modifiche. Sempre una stringa vuota. |
CHANGE_STREAM_SCHEMA |
STRING |
Il nome dello schema di questo flusso di modifiche. Sempre una stringa vuota. |
CHANGE_STREAM_NAME |
STRING |
Il nome della modifica in tempo reale. |
ALL |
BOOL |
TRUE se questa modifica in tempo reale monitora l'intero database.
FALSE se questa modifica in tempo reale monitora tabelle o colonne specifiche. |
CHANGE_STREAM_TABLES
Questa tabella con filtri di riga contiene informazioni sulle tabelle e sui modifiche in tempo reale
che le monitorano. Ogni riga descrive una tabella e una modifica in tempo reale. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono vedere solo le righe per modifiche in tempo reale in cui viene concesso il privilegio SELECT
al ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public
.
I dati in CHANGE_STREAM_TABLES
non includono le relazioni implicite tra tabelle e modifiche in tempo reale che monitorano l'intero database.
Nome colonna | Tipo | Descrizione |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Il nome del catalogo del flusso di modifiche. Sempre una stringa vuota. |
CHANGE_STREAM_SCHEMA |
STRING |
Il nome dello schema della modifica in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_NAME |
STRING |
Il nome della modifica in tempo reale a cui fa riferimento questa riga. |
TABLE_CATALOG |
STRING |
Il nome del catalogo della tabella. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema della tabella. Sempre una stringa vuota. |
TABLE_NAME |
STRING |
Il nome della tabella a cui fa riferimento questa riga. |
ALL_COLUMNS |
BOOL |
TRUE se il flusso di modifiche di questa riga monitora l'intera tabella
a cui fa riferimento questa riga. Altrimenti, FALSE . |
CHANGE_STREAM_COLUMNS
Questa tabella con filtri di riga contiene informazioni sulle colonne della tabella e sui flussi di modifiche che le monitorano. Ogni riga descrive un flusso di modifiche e una colonna. Se una modifica in tempo reale monitora un'intera tabella, le colonne al suo interno non vengono mostrate in questa visualizzazione.
Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare solo le righe per modifiche in tempo reale per cui viene concesso il privilegio SELECT
al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Il nome del catalogo del flusso di modifiche. Sempre una stringa vuota. |
CHANGE_STREAM_SCHEMA |
STRING |
Il nome dello schema della modifica in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_NAME |
STRING |
Il nome della modifica in tempo reale. |
TABLE_CATALOG |
STRING |
Il nome del catalogo della tabella. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema della tabella. Sempre una stringa vuota. |
TABLE_NAME |
STRING |
Il nome della tabella a cui fa riferimento questa riga. |
COLUMN_NAME |
STRING |
Il nome della colonna a cui fa riferimento questa riga. |
CHANGE_STREAM_OPTIONS
Questa tabella con filtri di riga contiene le opzioni di configurazione per le modifiche in tempo reale.
Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le opzioni per modifiche in tempo reale per cui viene concesso il privilegio SELECT
al ruolo attuale di database, ai ruoli di cui il ruolo attuale è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Il nome del catalogo del flusso di modifiche. Sempre una stringa vuota. |
CHANGE_STREAM_SCHEMA |
STRING |
Il nome dello schema della modifica in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_NAME |
STRING |
Il nome della modifica in tempo reale. |
OPTION_NAME |
STRING |
Il nome dell'opzione di modifiche in tempo reale. |
OPTION_TYPE |
STRING |
Il tipo di dati dell'opzione di modifica in tempo reale. |
OPTION_VALUE |
STRING |
Il valore dell'opzione di modifica in tempo reale. |
CHANGE_STREAM_PRIVILEGES
Questa tabella filtrata di righe elenca tutti i privilegi di controllo dell'accesso granulare concessi in tutti i flussi di modifiche a qualsiasi ruolo di database, tra cui public
. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi nelle modifiche in tempo reale al ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CHANGE_STREAM_CATALOG
|
STRING
|
Il nome del catalogo contenente il flusso di modifiche (una stringa vuota). |
CHANGE_STREAM_SCHEMA
|
STRING
|
Il nome dello schema contenente il flusso di modifiche (una stringa vuota). |
CHANGE_STREAM_NAME
|
STRING
|
Il nome della modifica in tempo reale. |
PRIVILEGE_TYPE
|
STRING
|
SELECT (l'unico privilegio consentito per le modifiche in tempo reale).
|
GRANTEE
|
STRING
|
Il nome del ruolo del database a cui viene concesso il privilegio. |
ROUTINES
Questa tabella con filtri di riga elenca tutte le funzioni di lettura delle modifiche in tempo reale di un database.
Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le funzioni di lettura dei flussi di dati in cui viene concesso il privilegio di controllo dell'accesso granulare dell'accesso EXECUTE
al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
SPECIFIC_CATALOG |
STRING |
Il nome del catalogo della routine. Sempre una stringa vuota. |
SPECIFIC_SCHEMA |
STRING |
Il nome dello schema della routine. Sempre una stringa vuota. |
SPECIFIC_NAME |
STRING |
Il nome della routine. Identifica in modo univoco la routine anche se il suo nome è sovraccarico. |
ROUTINE_CATALOG |
STRING |
Il nome del catalogo della routine. Sempre una stringa vuota. |
ROUTINE_SCHEMA |
STRING |
Il nome dello schema della routine. Sempre una stringa vuota. |
ROUTINE_NAME |
STRING |
Il nome della routine. (Potrebbe essere duplicato in caso di sovraccarico.) |
ROUTINE_TYPE |
STRING |
Il tipo di routine (FUNCTION o
PROCEDURE ). Sempre FUNCTION |
DATA_TYPE |
STRING |
Il tipo di dati restituito dalla routine |
ROUTINE_BODY |
STRING |
Il tipo di corpo della routine (SQL o
EXTERNAL ). |
ROUTINE_DEFINITION |
STRING |
La definizione di ROUTINE_BODY . |
SECURITY_TYPE |
STRING |
Il tipo di sicurezza della routine. Sempre INVOKER . |
ROUTINE_OPTIONS
Questa tabella con filtri di riga contiene una riga per ogni opzione per ogni funzione di lettura dei flussi di modifiche definita.
Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le opzioni per le funzioni di lettura delle modifiche in tempo reale per cui al ruolo attuale del database viene concesso il privilegio di controllo granulare degli accessi EXECUTE
, ai ruoli di cui l'attuale ruolo del database è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
SPECIFIC_CATALOG
|
STRING
|
Il nome del catalogo della routine. Sempre una stringa vuota. |
SPECIFIC_SCHEMA
|
STRING
|
Il nome dello schema della routine. Sempre una stringa vuota. |
SPECIFIC_NAME
|
STRING
|
Il nome della routine. Identifica in modo univoco la routine in caso di sovraccarico del nome. |
OPTION_NAME
|
STRING
|
Un identificatore SQL che identifica in modo univoco l'opzione. |
OPTION_TYPE
|
STRING
|
Il tipo di dati di OPTION_VALUE .
|
OPTION_VALUE
|
STRING
|
Un valore letterale SQL che descrive il valore di questa opzione. Il valore di questa colonna deve essere analizzabile come parte di una query. |
PARAMETERS
Questa tabella filtrata di righe definisce gli argomenti per ogni funzione di lettura delle modifiche in tempo reale. Ogni riga descrive un argomento per una funzione di lettura delle modifiche in tempo reale.
Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i parametri per le funzioni di lettura delle modifiche in tempo reale per cui al ruolo attuale del database è concesso il privilegio di controllo granulare degli accessi EXECUTE
, ai ruoli di cui quest'ultimo è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
SPECIFIC_CATALOG |
STRING |
Il nome del catalogo della routine. Sempre una stringa vuota. |
SPECIFIC_SCHEMA |
STRING |
Il nome dello schema della routine. Sempre una stringa vuota. |
SPECIFIC_NAME |
STRING |
Il nome della routine. Identifica in modo univoco la routine in caso di sovraccarico del nome. |
ORDINAL_POSITION |
INT64 |
La posizione ordinale del parametro nella routine, a partire da un valore pari a 1. |
PARAMETER_NAME |
STRING |
Il nome del parametro. |
DATA_TYPE |
STRING |
Il tipo di dati del parametro. |
ROUTINE_PRIVILEGES
Questa tabella filtrata di righe elenca tutti i privilegi di controllo dell'accesso granulare concessi a tutte le funzioni di lettura dei flussi di modifiche a qualsiasi ruolo di database, tra cui public
.
Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi alle funzioni di lettura delle modifiche in tempo reale al ruolo di database attuale, ai ruoli di cui l'attuale ruolo del database è membro oppure a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
SPECIFIC_CATALOG |
STRING |
Il nome del catalogo della routine. Sempre una stringa vuota. |
SPECIFIC_SCHEMA |
STRING |
Il nome dello schema della routine. Sempre una stringa vuota. |
SPECIFIC_NAME |
STRING |
Il nome della routine. Identifica in modo univoco la routine in caso di sovraccarico del nome. |
PRIVILEGE_TYPE |
STRING |
Sempre EXECUTE .
|
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso il privilegio. |
ROLE_TABLE_GRANTS
Questa tabella con filtro di righe elenca tutti i privilegi granulari di controllo dell'accesso dell'accesso concessi su tutte le tabelle e le viste a qualsiasi ruolo del database, tra cui public
. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi per tabelle e viste al ruolo di database attuale e ai ruoli di cui il ruolo attuale è membro, escluso public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
GRANTOR |
STRING |
Non utilizzato. Sempre NULL . |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso il privilegio. |
TABLE_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_NAME |
STRING |
Il nome della tabella o della visualizzazione. |
PRIVILEGE_TYPE |
STRING |
Il tipo di privilegio (SELECT , INSERT ,
UPDATE o DELETE ). |
IS_GRANTABLE |
STRING |
Non utilizzato. Sempre NO . |
ROLE_COLUMN_GRANTS
Questa tabella con filtro di righe elenca tutti i privilegi granulari di controllo dell'accesso dell'accesso concessi su tutte le colonne a qualsiasi ruolo del database, tra cui public
. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi per le colonne al ruolo attuale del database e ai ruoli di cui il ruolo attuale è membro, escluso public
.
La vista include i privilegi SELECT
, INSERT
e UPDATE
che la colonna eredita dalla tabella o dalla vista contenente la colonna.
Nome colonna | Tipo | Descrizione |
---|---|---|
GRANTOR |
STRING |
Non utilizzato. Sempre NULL . |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso questo privilegio. |
TABLE_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Non utilizzato. Sempre una stringa vuota. |
TABLE_NAME |
STRING |
Il nome della tabella o della vista che contiene la colonna. |
COLUMN_NAME |
STRING |
Il nome della colonna per cui viene concesso il privilegio. |
PRIVILEGE_TYPE |
STRING |
Il tipo di privilegio (SELECT ,
INSERT o UPDATE ). |
IS_GRANTABLE |
STRING |
Non utilizzato. Sempre NO . |
ROLE_CHANGE_STREAM_GRANTS
Questa tabella filtrata di righe elenca i privilegi SELECT
concessi per tutti i flussi di modifiche a qualsiasi ruolo di database, incluso public
. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi nelle modifiche in tempo reale al ruolo di database attuale e ai ruoli di cui il ruolo attuale è membro, escluso public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
CHANGE_STREAM_SCHEMA |
STRING |
Il nome dello schema che contiene la modifica in tempo reale. |
CHANGE_STREAM_NAME |
STRING |
Il nome della modifica in tempo reale. |
PRIVILEGE_TYPE |
STRING |
Il tipo di privilegio (solo SELECT ). |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso il privilegio. |
ROLE_MODEL_GRANTS
Questa tabella filtrata di righe elenca tutti i privilegi di controllo dell'accesso granulare concessi su tutti i modelli a qualsiasi ruolo del database, tra cui public
. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi per tabelle e viste al ruolo di database attuale e ai ruoli di cui il ruolo attuale è membro, escluso public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
GRANTOR |
STRING |
Non utilizzato. Sempre NULL . |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso il privilegio. |
MODEL_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
MODEL_SCHEMA |
STRING |
Non utilizzato. Sempre una stringa vuota. |
MODEL_NAME |
STRING |
Il nome del modello. |
PRIVILEGE_TYPE |
STRING |
Il tipo di privilegio (EXECUTE ). |
IS_GRANTABLE |
STRING |
Non utilizzato. Sempre NO . |
ROLE_ROUTINE_GRANTS
Questa tabella filtrata di righe elenca i privilegi EXECUTE
concessi per tutte le funzioni di lettura dei flussi di modifiche a qualsiasi ruolo di database, incluso public
. Le entità con autorizzazioni a livello di database IAM e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa visualizzazione. Tutte le altre entità possono vedere solo i privilegi concessi alle funzioni di lettura delle modifiche in tempo reale per il ruolo di database attuale e i ruoli di cui l'attuale ruolo del database è membro, escluso public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
GRANTOR
|
STRING
|
Non utilizzato. Sempre NULL . |
GRANTEE
|
STRING
|
Il nome del ruolo a cui viene concesso il privilegio. |
SPECIFIC_CATALOG
|
STRING
|
Il nome del catalogo di routine. |
SPECIFIC_SCHEMA
|
STRING
|
Il nome dello schema di routine. |
SPECIFIC_NAME
|
STRING
|
Il nome della routine. Identifica in modo univoco la routine in caso di sovraccarico del nome. |
PRIVILEGE_TYPE
|
STRING
|
Il tipo di privilegio concesso. Sempre EXECUTE . |
IS_GRANTABLE
|
STRING
|
Non utilizzato. Sempre NO . |
MODELS
Questa tabella elenca tutti i modelli di un database.
Nome colonna | Tipo | Descrizione |
---|---|---|
MODEL_CATALOG |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
MODEL_SCHEMA |
STRING |
Il nome dello schema di questo modello. Sempre una stringa vuota. |
MODEL_NAME |
STRING |
Il nome del modello. |
IS_REMOTE |
BOOL |
TRUE se si tratta di un modello remoto. FALSE se questo è un modello gestito. |
MODEL_OPTIONS
Questa tabella contiene le opzioni di configurazione per i modelli.
Nome colonna | Tipo | Descrizione |
---|---|---|
MODEL_CATALOG |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
MODEL_SCHEMA |
STRING |
Il nome dello schema di questo modello. Sempre una stringa vuota. |
MODEL_NAME |
STRING |
Il nome del modello. |
OPTION_NAME |
STRING |
Il nome dell'opzione del modello. |
OPTION_TYPE |
STRING |
Il tipo di dati dell'opzione del modello. |
OPTION_VALUE |
STRING |
Il valore dell'opzione del modello. |
MODEL_COLUMNS
Questa tabella elenca le colonne in un modello.
Nome colonna | Tipo | Descrizione |
---|---|---|
MODEL_CATALOG |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
MODEL_SCHEMA |
STRING |
Il nome dello schema di questo modello. Sempre una stringa vuota. |
MODEL_NAME |
STRING |
Il nome del modello. |
COLUMN_KIND |
STRING |
Tipo di colonna del modello. Uno dei seguenti: "INPUT" o "OUTPUT" . |
COLUMN_NAME |
STRING |
Il nome della colonna. |
DATA_TYPE |
STRING |
Il tipo di dati SQL standard della colonna. |
ORDINAL_POSITION |
INT64 |
Posizione ordinale della colonna, a partire dal valore 1, per preservare l'ordine delle colonne dichiarate. |
IS_EXPLICIT |
BOOL |
TRUE se la colonna è stata specificata esplicitamente nel DDL,
FALSE se la colonna è stata rilevata dall'endpoint. |
MODEL_COLUMN_OPTIONS
Questa tabella contiene le opzioni di configurazione per le colonne del modello.
Nome colonna | Tipo | Descrizione |
---|---|---|
MODEL_CATALOG |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
MODEL_SCHEMA |
STRING |
Il nome dello schema di questo modello. Sempre una stringa vuota. |
MODEL_NAME |
STRING |
Il nome del modello. |
COLUMN_KIND |
STRING |
Tipo di colonna del modello. Uno dei seguenti: "INPUT" o "OUTPUT" . |
COLUMN_NAME |
STRING |
Il nome della colonna. |
OPTION_NAME |
STRING |
Il nome dell'opzione della colonna del modello. |
OPTION_TYPE |
STRING |
Il tipo di dati dell'opzione della colonna del modello. |
OPTION_VALUE |
STRING |
Il valore dell'opzione della colonna del modello. |
MODEL_PRIVILEGES
Questa tabella filtrata di righe elenca tutti i privilegi concessi a livello di modello ai
ruoli del database, tra cui public
.
Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere i privilegi solo per i modelli per cui EXECUTE
è concesso il privilegio di controllo dell'accesso granulare al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
MODEL_CATALOG |
STRING |
Non utilizzato. Sempre una stringa vuota. |
MODEL_SCHEMA |
STRING |
Non utilizzato. Sempre una stringa vuota. |
MODEL_NAME |
STRING |
Il nome del modello su cui vengono concessi i privilegi granulari di controllo dell'accesso dell'accesso. |
PRIVILEGE_TYPE |
STRING |
EXECUTE > |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso il privilegio. |
Esempi
Restituisce informazioni su ogni tabella nello schema dell'utente:
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
Restituisce il nome di tutte le tabelle in INFORMATION_SCHEMA:
SELECT
t.table_name
FROM
information_schema.tables AS t
WHERE
t.table_schema = "SPANNER_SYS"
Restituisce informazioni sulle colonne nella tabella utente MyTable
:
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
Restituisce informazioni sulla regione leader predefinita per il database. Restituisce un valore vuoto se la leader predefinita non è impostata:
SELECT
s.option_name,
s.option_value
FROM
information_schema.database_options s
WHERE
s.option_name = 'default_leader'
Restituisce informazioni su ogni indice nello schema dell'utente:
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
Restituisce tutte le colonne che utilizzano opzioni diverse da quella predefinita:
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 = ''
Restituisce le opzioni di database correlate all'ottimizzatore correnti:
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')
Restituisce tutti i pacchetti di statistiche disponibili:
SELECT
*
FROM
information_schema.spanner_statistics;
Restituisci tutte le sequenze:
SELECT
*
FROM
information_schema.sequences;
Restituisce tutte le opzioni per la sequenza denominata "MySequence"
SELECT
*
FROM
information_schema.sequence_options WHERE name="MySequence";
Passaggi successivi
- Scopri gli strumenti di introspezione disponibili per aiutarti ad analizzare i problemi del database.