Lo schema delle informazioni è uno schema integrato comune a ogni database Spanner. Puoi eseguire query SQL sulle tabelle in INFORMATION_SCHEMA
per recuperare i metadati dello schema di 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 controllo dell'accesso granulare vedono i risultati filtrati per alcune INFORMATION_SCHEMA
tabelle a seconda del loro ruolo nel database. Per ulteriori informazioni, consulta Informazioni sul controllo dell'accesso granulare.
Utilizzo
Le tabelle INFORMATION_SCHEMA
sono disponibili solo tramite interfacce SQL, ad esempio:
- L'API
executeQuery
- Il comando
gcloud spanner databases execute-sql
- La pagina Spanner Studio di un database nella console Google Cloud
Altri metodi di lettura singola non supportano INFORMATION_SCHEMA
.
Alcune note aggiuntive sull'utilizzo di INFORMATION_SCHEMA
:
- Le query relative a
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 un'obsolescenza forte e limitata o limiti di timestamp di obsolescenza esatta. - Se utilizzi un database in dialetto PostgreSQL, consulta Schema di informazioni per i database in dialetto 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.
Filtro delle righe nelle tabelle information_schema
Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistemaspanner_info_reader
(o ai membri di questo ruolo) possono visualizzare tutte le righe di tutte le tabelle information_schema. Per altri agenti principali, per alcune tabelle, le righe vengono filtrate in base al ruolo corrente del database. Le descrizioni delle tabelle e delle visualizzazioni nelle sezioni seguenti indicano come viene applicato il filtro delle righe per ogni tabella e visualizzazione.
Tabelle in INFORMATION_SCHEMA
Le sezioni seguenti descrivono le tabelle in INFORMATION_SCHEMA
per i database in dialetto GoogleSQL.
SCHEMATA
La tabella INFORMATION_SCHEMA.SCHEMATA
elenca gli schemi nel database. Sono inclusi lo schema delle informazioni e gli schemi denominati, che contengono le tabelle che definisci.
Nome colonna | Tipo | Descrizione |
---|---|---|
CATALOG_NAME |
STRING |
Il nome del catalogo. Questa colonna esiste per motivi di compatibilità con le tabelle dello schema di informazioni standard SQL. Questa colonna è sempre una stringa vuota. |
SCHEMA_NAME |
STRING |
Il nome dello schema. Si tratta di un nome per gli schemi denominati o " per lo schema predefinito. |
PROTO_BUNDLE |
STRING |
Se il database contiene istruzioni del pacchetto proto, questa colonna fornisce informazioni sul pacchetto proto utilizzato nello schema. Questa colonna è NULL se non esiste alcun bundle di 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 non è presente un nome. |
OPTION_NAME |
STRING |
Il nome dell'opzione del database. |
OPTION_TYPE |
STRING |
Il tipo di dati dell'opzione del database. |
OPTION_VALUE |
STRING |
Il valore dell'opzione di database. |
PLACEMENTS
Questa tabella elenca i posizionamenti nel database.
Nome colonna | Tipo | Descrizione |
---|---|---|
PLACEMENT_NAME |
STRING |
Il nome del posizionamento. |
IS_DEFAULT |
BOOL |
Un valore booleano che indica se il posizionamento è quello predefinito. |
PLACEMENT_OPTIONS
Per ogni posizionamento, questa tabella elenca le opzioni impostate nel posizionamento
nella clausola OPTIONS
dell'istruzione CREATE PLACEMENT
.
I valori validi per OPTION_NAME
includono:
instance_partition
default_leader
Nome colonna | Tipo | Descrizione |
---|---|---|
PLACEMENT_NAME |
STRING |
Il nome del posizionamento. |
OPTION_NAME |
STRING |
Il nome dell'opzione di posizionamento. |
OPTION_TYPE |
STRING |
Il tipo di dati dell'opzione di posizionamento. Per entrambe le opzioni, si tratta di STRING(MAX) . |
OPTION_VALUE |
STRING |
Il valore dell'opzione di posizionamento. Per instance_partition ,
si tratta del nome della partizione dell'istanza. Per default_leader ,
si tratta del nome della regione leader predefinita. |
TABLES
Questa tabella filtrata per riga elenca le tabelle e le visualizzazioni nel database. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe in questa visualizzazione. Tutti gli altri principali possono vedere solo le tabelle
che soddisfano uno dei seguenti requisiti:
-
I privilegi di controllo dell'accesso granulare
SELECT
,INSERT
,UPDATE
oDELETE
vengono concessi nella tabella al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic
. - I privilegi
SELECT
,INSERT
oUPDATE
vengono concessi a qualsiasi colonna della tabella al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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, della visualizzazione o del sinonimo. |
TABLE_TYPE |
STRING |
Il tipo di tabella. Per le tabelle ha il valore
BASE TABLE ; per le visualizzazioni ha il valore VIEW ;
per i sinonimi ha il valore SYNONYM . |
PARENT_TABLE_NAME |
STRING |
Il nome della tabella principale se questa è interlacciata e
NULL in caso contrario. |
ON_DELETE_ACTION |
STRING |
Questo valore è impostato su CASCADE o NO ACTION per le tabelle interlacciate e su NULL in caso contrario. Per ulteriori informazioni, consulta
Comandi
TABLE. |
SPANNER_STATE |
STRING |
Una tabella può attraversare più stati durante la creazione, se sono coinvolte operazioni collettive. Ad esempio, quando la tabella viene creata con una
chiave esterna che richiede il backfill dei relativi indici. Gli stati possibili sono i seguenti:
|
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 filtrata per riga elenca le colonne di una tabella. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo le colonne
che soddisfano uno dei seguenti requisiti:
- Qualsiasi dei privilegi di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso direttamente nella colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic
. - Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso nella tabella contenente la colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 di 1. |
COLUMN_DEFAULT |
STRING |
Una rappresentazione di 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 . Consulta la colonna SPANNER_TYPE |
IS_NULLABLE |
STRING |
Una stringa che indica se la colonna è nullable. In conformità
allo 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 è 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 |
Lo stato attuale della colonna. Una nuova colonna generata archiviata aggiunta a
una tabella esistente potrebbe passare attraverso più stati osservabili dall'utente prima di essere
completamente utilizzabile. I valori possibili sono:
|
COLUMN_PRIVILEGES
Questa tabella filtrata per riga elenca tutti i privilegi concessi a livello di colonna a qualsiasi ruolo del database, incluso public
. Le entità con autorizzazioni IAM a livello di database e le entità 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. Tutti gli altri principali possono visualizzare i privilegi solo per le colonne che soddisfano uno dei seguenti requisiti:
- Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso direttamente nella colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic
. - Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso nella tabella contenente la colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 contenente la colonna con 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 è concesso questo privilegio. |
TABLE_PRIVILEGES
Questa tabella filtrata per riga elenca tutti i privilegi concessi a livello di tabella ai
ruoli del database, incluso public
.
Le entità con autorizzazioni IAM a livello di database e le entità 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 visualizzazione. Tutti gli altri principali possono vedere i privilegi solo per le tabelle su cui uno dei privilegi di controllo dell'accesso granulare SELECT
, INSERT
, UPDATE
o DELETE
è concesso al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 su cui vengono concessi i privilegi di controllo dell'accesso granulare. |
PRIVILEGE_TYPE |
STRING |
Uno dei seguenti valori: SELECT , INSERT , UPDATE e DELETE |
GRANTEE |
STRING |
Il nome del ruolo del database a cui è concesso questo 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 vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema della limitazione. Una stringa vuota se non è presente un 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 non è presente un 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 tabelle
che definiscono i vincoli PRIMARY KEY
e UNIQUE
. Sono incluse anche le tavole di definizioni FOREIGN KEY
a cui si fa riferimento.
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 non è presente un nome. |
TABLE_NAME |
STRING |
Il nome della tabella vincolata. |
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo della limitazione. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema della limitazione. Una stringa vuota se non è presente un nome. |
CONSTRAINT_NAME |
STRING |
Il nome del vincolo. |
REFERENTIAL_CONSTRAINTS
Questa tabella contiene una riga per ogni vincolo FOREIGN KEY
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo della FOREIGN KEY. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema della FOREIGN KEY. Una stringa vuota se non è presente un nome. |
CONSTRAINT_NAME |
STRING |
Il nome della FOREIGN KEY. |
UNIQUE_CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo della chiave primaria o del vincolo UNIQUE a cui fa riferimento la chiave FOREIGN. Sempre una stringa vuota. |
UNIQUE_CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema della chiave primaria o del vincolo UNIQUE a cui fa riferimento la chiave FOREIGN. Una stringa vuota se non è presente un nome. |
UNIQUE_CONSTRAINT_NAME |
STRING |
Il nome del vincolo PRIMARY KEY o UNIQUE a cui fa riferimento la FOREIGN KEY. |
MATCH_OPTION |
STRING |
Sempre SIMPLE . |
UPDATE_RULE |
STRING |
Sempre NO ACTION . |
DELETE_RULE |
STRING |
CASCADE o NO ACTION . |
SPANNER_STATE |
STRING |
Lo stato attuale della chiave esterna. Spanner non inizia a applicare
la limitazione finché non vengono creati e sottoposti a backfill gli indici di supporto della chiave esterna. Una volta che gli indici sono pronti, Spanner inizia a applicare il vincolo per le nuove transazioni e convalida i dati esistenti.
I valori possibili e gli stati che rappresentano sono:
|
CHECK_CONSTRAINTS
La tabella information_schema.CHECK_CONSTRAINTS
contiene una riga per ogni vincolo CHECK
definito dalla parola chiave CHECK
o NOT NULL
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo della limitazione. Questa colonna non è mai nulla, ma è sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema della limitazione. Una stringa vuota se non è presente un nome. |
CONSTRAINT_NAME |
STRING |
Il nome del vincolo. Questa colonna non è mai nulla. Se non viene 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 vuota. |
SPANNER_STATE |
STRING |
Lo stato attuale della limitazione CHECK . Questa colonna non è mai vuota. Gli stati possibili sono i seguenti:
|
KEY_COLUMN_USAGE
Questa tabella filtrata per riga contiene una riga per ogni colonna delle tabelle di TABLE_CONSTRAINTS
vincolate come chiavi da un vincolo PRIMARY KEY
, FOREIGN
KEY
o UNIQUE
. Le entità con autorizzazioni IAM a livello di database e le entità 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 visualizzazione. Tutti gli altri principali possono visualizzare solo le colonne che soddisfano i seguenti criteri:
- Qualsiasi dei privilegi di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso direttamente nella colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic
. - Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso nella tabella contenente la colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo della limitazione. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema della limitazione. Questa colonna non è mai nulla. Una stringa vuota se non ha 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 non è presente un 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,
a partire da un valore di 1 . |
POSITION_IN_UNIQUE_CONSTRAINT |
INT64 |
Per i valori FOREIGN KEY , la posizione ordinale della colonna all'interno
del vincolo univoco, che inizia con un valore 1 . Questa
colonna è null per altri tipi di vincoli. |
CONSTRAINT_COLUMN_USAGE
Questa tabella contiene una riga per ogni colonna utilizzata da una limitazione. Sono incluse le colonne PRIMARY KEY
e UNIQUE
, oltre alle colonne a cui fanno riferimento i vincoli FOREIGN KEY
.
Nome colonna | Tipo | Descrizione |
---|---|---|
TABLE_CATALOG |
STRING |
Il nome del catalogo della tabella delle colonne. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema della tabella delle colonne. Questa colonna non è mai nulla. Una stringa vuota se non è stato specificato un nome. |
TABLE_NAME |
STRING |
Il nome della tabella della colonna. |
COLUMN_NAME |
STRING |
Il nome della colonna utilizzata dalla limitazione. |
CONSTRAINT_CATALOG |
STRING |
Il nome del catalogo della limitazione. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema della limitazione. Una stringa vuota se non è presente un nome. |
CONSTRAINT_NAME |
STRING |
Il nome del vincolo. |
TABLE_SYNONYMS
Questa tabella elenca 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 filtrata per riga elenca gli indici nel database. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo gli indici
che soddisfano uno dei seguenti requisiti:
- Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso a livello di colonna a tutte le colonne dell'indice al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic
. - Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
,UPDATE
oDELETE
viene concesso alla tabella che contiene l'indice del ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 non è presente un 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 interlacciati in una tabella principale, come discusso nella sezione Creare un indice secondario. Questa colonna contiene il nome della tabella principale o una stringa vuota se l'indice non è interlacciato. |
IS_UNIQUE |
BOOL |
Indica se le chiavi dell'indice devono essere univoche. |
IS_NULL_FILTERED |
BOOL |
Indica se l'indice include voci con valori NULL . |
INDEX_STATE |
STRING |
Lo stato attuale dell'indice. I valori possibili e gli stati che rappresentano sono:
|
SPANNER_IS_MANAGED |
BOOL |
TRUE se l'indice è gestito da Spanner; altrimenti,
FALSE . Gli indici di supporto secondari per le chiavi esterne sono gestiti da
Spanner. |
INDEX_COLUMNS
Questa tabella filtrata per riga elenca le colonne di un indice. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo gli indici
che soddisfano uno dei seguenti requisiti:
- Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso a livello di colonna a tutte le colonne dell'indice al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic
. - Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso alla tabella che ha un indice per il ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 non è presente un 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 nella 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'ordinamento 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 la colonna è nullable. In
conformità allo standard SQL, la stringa è YES o
NO ,
piuttosto che un valore booleano. |
SPANNER_TYPE |
STRING |
Il tipo di dati della colonna. |
COLUMN_OPTIONS
Questa tabella filtrata per riga elenca le opzioni di colonna in una tabella. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe in questa visualizzazione. Tutti gli altri principali possono vedere le opzioni solo per le colonne che soddisfano uno dei seguenti requisiti:
- Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso direttamente nella colonna al ruolo del database corrente, ai ruoli di cui fa parte il ruolo del database corrente o apublic
. - Qualsiasi privilegio di controllo dell'accesso granulare
SELECT
,INSERT
oUPDATE
viene concesso nella tabella contenente la colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 INFORMATION_SCHEMA stesso).
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 in DDL.
|
OPTION_TYPE |
STRING |
Un nome di tipo di dati che corrisponde al 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 nell'ambito di una query. L'espressione
risultante dall'analisi del valore deve essere trasferibile a
OPTION_TYPE . Questa colonna non è mai nulla. |
SEQUENCES
Questa tabella elenca i metadati delle sequenze. SEQUENCES
viene filtrato in base alle righe in base ai privilegi di accesso granulare, se un utente con questi privilegi 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. |
DATA_TYPE |
STRING |
Il tipo di valori della sequenza. Utilizza il tipo di dati INT64 . |
SEQUENCE_OPTIONS
Questa tabella contiene le opzioni di configurazione per le sequenze. SEQUENCE_OPTIONS
viene filtrato in base alle righe in base ai privilegi di accesso granulare, se un utente con questi privilegi esegue una 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 di sequenza. |
OPTION_TYPE |
STRING |
Un nome di tipo di dati che corrisponde al tipo di questo valore dell'opzione. |
OPTION_VALUE |
STRING |
Il valore dell'opzione di sequenza. L'espressione risultante dall'analisi del valore deve consentire il passaggio a OPTION_TYPE . |
SPANNER_STATISTICS
Questa tabella elenca i pacchetti di statistiche dello strumento di ottimizzazione delle query disponibili.
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 INFORMATION_SCHEMA stesso).
Questa colonna non è mai nulla. |
PACKAGE_NAME |
STRING |
Il nome del pacchetto di statistiche. |
ALLOW_GC |
BOOL |
FALSE se il pacchetto delle statistiche è esente dalla raccolta
dei rifiuti; altrimenti, TRUE .
Questo attributo deve essere impostato su FALSE per fare riferimento al pacchetto di statistiche in un suggerimento o tramite l'API client.
|
VIEWS
Questa tabella filtrata per riga elenca le visualizzazioni nel database. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo le viste su cui è concesso il privilegio di controllo dell'accesso granulare SELECT
al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 non è presente un 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 visualizzazione. INVOKER o DEFINER .
Per saperne di più, consulta Informazioni sulle visualizzazioni. |
ROLES
Questa tabella filtrata per riga elenca i ruoli del database definiti per il controllo dell'accesso granulare, inclusi i ruoli di sistema. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutti i ruoli di 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 per riga elenca tutte le iscrizioni ai ruoli concesse esplicitamente a tutti i ruoli del database. Le entità con autorizzazioni IAM a livello di database
e le entità 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 visualizzazione. Tutti gli altri principali possono vedere solo le iscrizioni ai ruoli concesse al ruolo database corrente o a un ruolo di cui il ruolo database corrente è membro.
Poiché tutti i ruoli del database sono membri del 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 concesso questo appartenenza. |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso questo appartenenza. |
CHANGE_STREAMS
Questa tabella filtrata per riga elenca tutti gli modifiche in tempo reale di un database e indica quali monitorano l'intero database rispetto a tabelle o colonne specifiche. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe in questa visualizzazione. Tutti gli altri principali possono vedere solo i stream di modifiche a cui è concesso il privilegio di controllo dell'accesso granulare SELECT
al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 stream di modifiche. Sempre una stringa vuota. |
CHANGE_STREAM_NAME |
STRING |
Il nome del flusso di modifiche. |
ALL |
BOOL |
TRUE se questo flusso di modifiche monitora l'intero database.
FALSE se questo stream delle modifiche monitora tabelle o colonne specifiche. |
CHANGE_STREAM_TABLES
Questa tabella filtrata per riga contiene informazioni sulle tabelle e sugli modifiche in tempo reale che le monitorano. Ogni riga descrive una tabella e uno stream di modifiche. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe in questa visualizzazione. Tutti gli altri principali possono vedere solo le righe per gli modifiche in tempo reale a cui il privilegio SELECT
è concesso al ruolo di database corrente, ai ruoli di cui il ruolo di database corrente è 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 dello stream di modifiche 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 lo stream di modifiche di questa riga monitora l'intera tabella a cui fa riferimento. In caso contrario, FALSE . |
CHANGE_STREAM_COLUMNS
Questa tabella filtrata per riga contiene informazioni sulle colonne della tabella e sugli stream di variazioni che le monitorano. Ogni riga descrive uno stream di modifiche e una colonna. Se un stream di modifiche monitora un'intera tabella, le colonne della tabella non vengono visualizzate in questa visualizzazione.
Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo le righe per gli modifiche in tempo reale a cui è concesso il privilegio SELECT
al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 del flusso di modifiche. |
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 filtrata per riga contiene le opzioni di configurazione per modifiche in tempo reale.
Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo
le opzioni per gli modifiche in tempo reale a cui è concesso il privilegio SELECT
al
ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 del flusso di modifiche. |
OPTION_NAME |
STRING |
Il nome dell'opzione di stream delle modifiche. |
OPTION_TYPE |
STRING |
Il tipo di dati dell'opzione stream di modifiche. |
OPTION_VALUE |
STRING |
Il valore dell'opzione stream delle modifiche. |
CHANGE_STREAM_PRIVILEGES
Questa tabella filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare concessi su tutti gli stream di modifiche a qualsiasi ruolo del database, incluso public
. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo i privilegi concessi agli modifiche in tempo reale per il ruolo di database corrente, per i ruoli di cui il ruolo di database corrente è membro o per public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
CHANGE_STREAM_CATALOG
|
STRING
|
Il nome del catalogo contenente lo stream delle 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 del flusso di modifiche. |
PRIVILEGE_TYPE
|
STRING
|
SELECT (l'unico privilegio consentito per modifiche in tempo reale).
|
GRANTEE
|
STRING
|
Il nome del ruolo del database a cui è concesso questo privilegio. |
ROUTINES
Questa tabella filtrata per riga elenca tutte le funzioni di lettura del flusso di modifiche di un database.
Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo le funzioni di lettura dei flussi di variazioni a cui è stato concesso il privilegio di controllo dell'accesso dell'accesso granulare EXECUTE
al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 è sovraccaricato. |
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 del 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 filtrata per riga contiene una riga per ogni opzione per ogni funzione di lettura del flusso di variazioni definita.
Le entità con autorizzazioni IAM a livello di database e le entità 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 visualizzazione. Tutti gli altri principali possono vedere solo le opzioni per le funzioni di lettura dei flussi di variazioni a cui è concesso il privilegio di controllo dell'accesso granulare EXECUTE
al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 dei nomi. |
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 nell'ambito di una query. |
PARAMETERS
Questa tabella filtrata per riga definisce gli argomenti per ogni funzione di lettura del flusso di modifiche. Ogni riga descrive un argomento per una funzione di lettura dello stream di variazioni.
Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo
i parametri per le funzioni di lettura dei flussi di variazioni a cui è concesso il privilegio di controllo dell'accesso granulare EXECUTE
al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 dei nomi. |
ORDINAL_POSITION |
INT64 |
La posizione ordinale del parametro nella routine, che inizia con un valore di 1. |
PARAMETER_NAME |
STRING |
Il nome del parametro. |
DATA_TYPE |
STRING |
Il tipo di dati del parametro. |
ROUTINE_PRIVILEGES
Questa tabella filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare concessi a tutte le funzioni di lettura del flusso di modifiche a qualsiasi ruolo del database, incluso public
.
Le entità con autorizzazioni IAM a livello di database e le entità 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 visualizzazione. Tutti gli altri principali possono vedere solo i privilegi concessi alle funzioni di lettura del stream delle modifiche al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 dei nomi. |
PRIVILEGE_TYPE |
STRING |
Sempre EXECUTE .
|
GRANTEE |
STRING |
Il nome del ruolo del database a cui è concesso questo privilegio. |
ROLE_TABLE_GRANTS
Questa tabella filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare concessi su tutte le tabelle
e le viste a qualsiasi ruolo del database, incluso public
. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo i privilegi concessi su tabelle e visualizzazioni al ruolo del database corrente e ai ruoli di cui il ruolo del database corrente è membro, escluso public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
GRANTOR |
STRING |
Non utilizzato. Sempre NULL . |
GRANTEE |
STRING |
Il nome del ruolo del database a cui è 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 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 filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare concessi su tutte le colonne
a qualsiasi ruolo del database, incluso public
. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo i privilegi concessi sulle colonne al ruolo del database corrente e ai ruoli di cui il ruolo del database corrente è membro, escluso public
.
La visualizzazione include i privilegi SELECT
, INSERT
e UPDATE
ereditati dalla colonna dalla tabella o dalla visualizzazione che la contiene.
Nome colonna | Tipo | Descrizione |
---|---|---|
GRANTOR |
STRING |
Non utilizzato. Sempre NULL . |
GRANTEE |
STRING |
Il nome del ruolo del database a cui è 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 visualizzazione contenente la colonna. |
COLUMN_NAME |
STRING |
Il nome della colonna a 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 per riga elenca i privilegi SELECT
concessi su tutti i flussi di modifiche a qualsiasi ruolo del database, incluso public
. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo i privilegi concessi agli modifiche in tempo reale per il ruolo di database corrente e per i ruoli di cui il ruolo di database corrente è 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 contenente lo stream di modifiche. |
CHANGE_STREAM_NAME |
STRING |
Il nome del flusso di modifiche. |
PRIVILEGE_TYPE |
STRING |
Il tipo di privilegio (solo SELECT ). |
GRANTEE |
STRING |
Il nome del ruolo del database a cui è concesso questo privilegio. |
ROLE_MODEL_GRANTS
Questa tabella filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare concessi su tutti i modelli
a qualsiasi ruolo del database, incluso public
. Le entità con autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo i privilegi concessi su tabelle e visualizzazioni al ruolo del database corrente e ai ruoli di cui il ruolo del database corrente è membro, escluso public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
GRANTOR |
STRING |
Non utilizzato. Sempre NULL . |
GRANTEE |
STRING |
Il nome del ruolo del database a cui è concesso questo 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 per riga elenca i privilegi EXECUTE
concessi a tutte le funzioni di lettura del flusso di modifiche a qualsiasi ruolo del database, incluso public
. Le entità con autorizzazioni a livello di database IAM e le entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di questo ruolo possono visualizzare tutte le righe di questa visualizzazione. Tutti gli altri principali possono vedere solo i privilegi concessi alle funzioni di lettura del flusso di modifiche al ruolo del database corrente e ai ruoli di cui il ruolo del database corrente è 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 della routine. |
SPECIFIC_NAME
|
STRING
|
Il nome della routine. Identifica in modo univoco la routine in caso di sovraccarico dei nomi. |
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 si tratta di 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 di 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, che inizia con il valore 1, per mantenere immutato 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 per riga elenca tutti i privilegi concessi a livello di modello ai
ruoli del database, incluso public
.
Le entità con autorizzazioni IAM a livello di database e le entità 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 visualizzazione. Tutti gli altri principali possono vedere i privilegi solo per i modelli a cui è concesso il privilegio di controllo dell'accesso granulare EXECUTE
al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è 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 di controllo dell'accesso granulare. |
PRIVILEGE_TYPE |
STRING |
EXECUTE > |
GRANTEE |
STRING |
Il nome del ruolo del database a cui è concesso questo privilegio. |
PROPERTY_GRAPHS
Questa tabella filtrata per riga elenca i
grafici delle proprietà
nel database. Le entità con autorizzazioni IAM a livello di database e le entità 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. Tutti gli altri agenti possono visualizzare i grafici delle proprietà solo se soddisfano i requisiti per visualizzare tutte le tabelle utilizzate per definirli.
Nome colonna | Tipo | Descrizione |
---|---|---|
PROPERTY_GRAPH_CATALOG |
STRING |
Il nome del catalogo. Sempre una stringa vuota. |
PROPERTY_GRAPH_SCHEMA |
STRING |
Il nome dello schema. Una stringa vuota se non è presente un nome. |
PROPERTY_GRAPH_NAME |
STRING |
Il nome del grafo della proprietà. |
PROPERTY_GRAPH_METADATA_JSON |
JSON |
La definizione del grafo delle proprietà in formato JSON. |
La colonna PROPERTY_GRAPH_METADATA_JSON
contiene un oggetto JSON PropertyGraph
definito come segue:
Nome dell'oggetto JSON | Nome campo | Tipo JSON | Descrizione |
---|---|---|---|
PropertyGraph |
catalog |
string |
Il nome del catalogo. Sempre una stringa vuota. |
schema |
string |
Il nome dello schema. Una stringa vuota se non è presente un nome. | |
name |
string |
Il nome del grafo della proprietà. | |
nodeTables |
array<object> |
Un elenco di oggetti GraphElementTable per i nodi. |
|
edgeTables |
array<object> |
Un elenco di oggetti GraphElementTable per gli spigoli. |
|
labels |
array<object> |
Un elenco di oggetti GraphElementLabel . |
|
propertyDeclarations |
array<object> |
Un elenco di oggetti GraphPropertyDeclaration . |
|
GraphElementTable |
name |
string |
Il nome della tabella degli elementi del grafico. |
kind |
string |
NODE o EDGE . |
|
baseCatalogName |
string |
Il nome del catalogo contenente la tabella di base. | |
baseSchemaName |
string |
Il nome dello schema contenente la tabella di base. | |
baseTableName |
string |
Il nome della tabella di input da cui vengono creati gli elementi. | |
keyColumns |
array<string> |
I nomi delle colonne che costituiscono la chiave dell'elemento. | |
labelNames |
array<string> |
I nomi delle etichette associate a questa tabella di elementi. | |
propertyDefinitions |
array<object> |
Un elenco di oggetti GraphPropertyDefinition . |
|
sourceNodeTable |
object |
Un oggetto GraphNodeTableReference . Esiste solo quando
kind è EDGE . |
|
destinationNodeTable |
object |
Un oggetto GraphNodeTableReference . Esiste solo quando
kind è EDGE . |
|
GraphNodeTableReference |
nodeTableName |
string |
Il nome della tabella degli elementi del grafico. |
edgeTableColumns |
array<string> |
Il nome delle colonne associate alle chiavi di origine e di destinazione per gli spigoli. | |
nodeTableColumns |
array<string> |
Il nome delle colonne associate alle chiavi di origine e di destinazione per i nodi. | |
GraphElementLabel |
name |
string |
Il nome dell'etichetta. |
propertyDeclarationNames |
array<string> |
I nomi delle proprietà associate a questa etichetta. | |
GraphPropertyDeclaration |
name |
string |
Il nome della proprietà. |
type |
string |
Il tipo di proprietà. | |
GraphPropertyDefinition |
propertyDeclarationName |
string |
Il nome della proprietà. |
valueExpressionSql |
string |
L'espressione che definisce la proprietà. |
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 della 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 il leader predefinito non è impostato:
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 correnti relative all'ottimizzatore:
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;
Restituisce tutte le sequenze:
SELECT
*
FROM
information_schema.sequences;
Restituisce tutte le opzioni di sequenza per la sequenza denominata "MiaSequenza"
SELECT
*
FROM
information_schema.sequence_options WHERE name="MySequence";
Restituisce i nomi di tutti i grafici delle proprietà e le relative definizioni:
SELECT
property_graph_name,
property_graph_metadata_json
FROM
information_schema.property_graphs
Restituisce i nomi di tutti i grafici delle proprietà insieme alle relative etichette e proprietà:
SELECT
property_graph_name,
property_graph_metadata_json.labels,
property_graph_metadata_json.propertyDeclarations
FROM
information_schema.property_graphs
Passaggi successivi
- Scopri gli strumenti di introspezione disponibili per aiutarti a esaminare i problemi del database.