Lo schema di informazioni è uno schema integrato comune a ogni 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_schema,
table_name
FROM
information_schema.tables
WHERE
table_schema NOT IN ('information_schema', 'SPANNER_SYS')
AND table_type = 'BASE TABLE'
Gli utenti con controllo granulare dell'accesso visualizzano i risultati filtrati per alcune tabelle INFORMATION_SCHEMA
a seconda del loro ruolo nel database. Per saperne di più, consulta Informazioni sul controllo granulare dell'accesso.
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 su
INFORMATION_SCHEMApossono essere utilizzate in una transazione di sola lettura, ma non in una transazione di lettura/scrittura. - Le query sul
INFORMATION_SCHEMApossono utilizzare limiti di timestamp con inattività forte, limitata o esatta. - Se utilizzi un database con dialetto PostgreSQL, consulta Schema di informazioni per i database con dialetto PostgreSQL.
- Se sei un utente con controllo granulare dell'accesso, le tabelle
INFORMATION_SCHEMAvengono filtrate per 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 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 del database corrente. Le descrizioni delle tabelle e delle viste nelle sezioni seguenti indicano come viene applicato il filtro di riga per ogni tabella e vista.
Tabelle in INFORMATION_SCHEMA
Le sezioni seguenti descrivono le tabelle in INFORMATION_SCHEMA per i database con dialetto GoogleSQL.
SCHEMATA
La tabella INFORMATION_SCHEMA.SCHEMATA elenca gli schemi nel database. Questi includono 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 la compatibilità con le tabelle dello schema di informazioni standard SQL. Questa colonna è sempre una stringa vuota. |
SCHEMA_NAME |
STRING |
Il nome dello schema. Questo è un nome per gli schemi denominati o "" per lo schema predefinito. |
PROTO_BUNDLE |
STRING |
Se il database contiene istruzioni proto bundle, questa colonna fornisce informazioni sul proto bundle utilizzato nello schema. Questa colonna è NULL se nel database non esiste un bundle proto. |
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 ha 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 del 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 placement, questa tabella elenca le opzioni impostate sul placement nella clausola OPTIONS dell'istruzione CREATE
PLACEMENT.
I valori validi per OPTION_NAME includono:
instance_partitiondefault_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,
questo è il nome della partizione dell'istanza. Per default_leader,
è il nome della regione leader predefinita. |
LOCALITY_GROUP_OPTIONS
Per ogni gruppo di località, questa tabella elenca il nome e le opzioni impostate per il gruppo di località nella clausola OPTIONS dell'istruzione CREATE LOCALITY
GROUP.
| Nome colonna | Tipo | Descrizione |
|---|---|---|
LOCALITY_GROUP_NAME |
STRING |
Il nome del gruppo di località. |
OPTION_NAME |
STRING |
Il nome dell'opzione del gruppo di località. Le opzioni valide sono:
|
OPTION_VALUE |
STRING |
Il valore dell'opzione del gruppo di località. Per STORAGE,
questo è ssd o hdd. Per SSD_TO_HDD_SPILL_TIMESPAN, questo è il periodo di tempo per cui i dati devono essere archiviati nell'SSD prima di essere spostati nello spazio di archiviazione HDD. Ad esempio, 10d è 10 giorni. Il periodo di tempo minimo che puoi impostare è un'ora. |
TABLES
Questa tabella filtrata per riga elenca le tabelle e le viste 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 vista. Tutte le altre entità possono visualizzare solo le tabelle che soddisfano uno dei seguenti requisiti:
-
I privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERT,UPDATEoDELETEvengono concessi sulla tabella al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic. - I privilegi
SELECT,INSERToUPDATEvengono concessi su 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 |
Il nome dello schema della tabella. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
TABLE_NAME |
STRING |
Il nome della tabella, della vista o del sinonimo. |
TABLE_TYPE |
STRING |
Il tipo di tabella. Per le tabelle, il valore è BASE TABLE; per le viste, il valore è VIEW; per i sinonimi, il valore è SYNONYM. |
PARENT_TABLE_NAME |
STRING |
Il nome della tabella principale se questa tabella è intercalata, altrimenti NULL. |
ON_DELETE_ACTION |
STRING |
Questo valore è impostato su CASCADE o NO ACTION per le tabelle con interleaving e su NULL in caso contrario. Per saperne di più, consulta Istruzioni TABLE. |
SPANNER_STATE |
STRING |
Una tabella può passare attraverso 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:
|
INTERLEAVE_TYPE |
STRING |
Il testo dell'espressione che indica se esiste una relazione padre-figlio tra questa tabella e la tabella in cui è interfoliata.
I valori possibili sono:
|
ROW_DELETION_POLICY_EXPRESSION |
STRING |
Il testo dell'espressione che definisce la politica di cancellazione 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo le colonne che soddisfano uno dei seguenti requisiti:
- Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERToUPDATEviene concesso direttamente sulla colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic. - Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERToUPDATEviene concesso sulla tabella che contiene 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 |
Il nome dello schema della tabella della colonna. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
TABLE_NAME |
STRING |
Il nome della tabella. |
COLUMN_NAME |
STRING |
Il nome della colonna. |
ORDINAL_POSITION |
INT64 |
La posizione ordinale della colonna nella tabella, a partire da un valore pari a 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 |
Inclusa 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à 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 è 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. |
IS_HIDDEN |
STRING |
Una stringa impostata su TRUE se la colonna non viene visualizzata in una query SELECT * e su FALSE in caso contrario. Se la colonna è nascosta, puoi comunque selezionarla utilizzando il suo nome (ad esempio, SELECT Id, Name, ColHidden FROM TableWithHiddenColumn). |
SPANNER_STATE |
STRING |
Lo 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:
|
IS_IDENTITY |
STRING |
Una stringa impostata su YES se la colonna generata è una colonna di identità e su NO in caso contrario. |
IDENTITY_GENERATION |
STRING |
Una stringa che specifica se la colonna consente solo valori generati e non personalizzati inseriti dall'utente.
|
IDENTITY_KIND |
STRING |
Sempre BIT_REVERSED_POSITITVE_SEQUENCE. Sono supportate solo sequenze positive con bit invertiti.
|
IDENTITY_START_WITH_COUNTER |
STRING |
Il valore iniziale del contatore interno prima della trasformazione. Ad esempio, il valore iniziale prima dell'inversione dei bit. |
IDENTITY_SKIP_RANGE_MIN |
STRING |
Il valore minimo di un intervallo saltato dopo la trasformazione. |
IDENTITY_SKIP_RANGE_MAX |
STRING |
Il valore massimo di un intervallo saltato dopo la trasformazione. |
ON_UPDATE_EXPRESSION |
STRING |
Una STRING con la rappresentazione SQL dell'espressione "ON UPDATE" per una colonna. Se la colonna non ha un valore "ON UPDATE", il valore è "NULL". |
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 in questa vista. Tutte le altre entità possono visualizzare i privilegi solo per le colonne che soddisfano uno dei seguenti requisiti:
- Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERToUPDATEviene concesso direttamente nella colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic. - Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERToUPDATEviene concesso sulla tabella che contiene 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 |
Il nome dello schema della tabella della colonna. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
TABLE_NAME |
STRING |
Il nome della tabella che contiene 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 viene 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 in questa vista. Tutte le altre entità possono visualizzare i privilegi solo per le tabelle su cui uno dei privilegi di controllo dell'accesso granulare dell'accesso 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 |
Il nome dello schema della tabella. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
TABLE_NAME |
STRING |
Il nome della tabella su cui vengono concessi i privilegi di controllo dell'accesso granulare dell'accesso. |
PRIVILEGE_TYPE |
STRING |
Uno dei valori SELECT, INSERT, UPDATE
e DELETE |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene 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 del vincolo. Una stringa vuota se non ha 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. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
TABLE_NAME |
STRING |
Il nome della tabella con vincoli. |
CONSTRAINT_TYPE |
STRING |
Il tipo di vincolo. I valori possibili sono:
|
IS_DEFERRABLE |
STRING |
Sempre NO. |
INITIALLY_DEFERRED |
STRING |
Sempre NO. |
ENFORCED |
STRING |
NO se il vincolo è una
chiave esterna informativa (NOT ENFORCED).
YES per le chiavi esterne applicate o qualsiasi altro tipo di vincolo.
|
CONSTRAINT_TABLE_USAGE
Questa tabella elenca le tabelle che definiscono o sono utilizzate dai vincoli. Include 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. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
TABLE_NAME |
STRING |
Il nome della tabella con vincoli. |
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 non ha 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 chiave esterna. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema della chiave esterna. Una stringa vuota se non ha un nome. |
CONSTRAINT_NAME |
STRING |
Il nome della CHIAVE ESTERNA. |
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 FOREIGN KEY. Una stringa vuota se non ha un 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, SET NULL o NO ACTION. |
SPANNER_STATE |
STRING |
Lo stato attuale della chiave esterna. Spanner non inizia ad applicare il vincolo finché gli indici di supporto della chiave esterna non vengono creati e sottoposti a backfill. Una volta pronti gli indici, 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 per 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 null, ma è sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema del vincolo. Una stringa vuota se non ha un nome. |
CONSTRAINT_NAME |
STRING |
Il nome del vincolo. Questa colonna non è mai null. 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 null. |
SPANNER_STATE |
STRING |
Lo stato attuale del vincolo CHECK. Questa colonna non è mai null. 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 in questa vista. Tutte le altre entità possono visualizzare solo le colonne che soddisfano i seguenti criteri:
- Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERToUPDATEviene concesso direttamente sulla colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic. - Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERToUPDATEviene concesso sulla tabella che contiene 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 del vincolo. Sempre una stringa vuota. |
CONSTRAINT_SCHEMA |
STRING |
Il nome dello schema del vincolo. Questa colonna non è mai null. Una stringa vuota se non ha un 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 tabella della colonna vincolata. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
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 FOREIGN KEY, la posizione ordinale della colonna all'interno del vincolo univoco, a partire da un valore di 1. Questa colonna è null per altri tipi di vincoli. |
CONSTRAINT_COLUMN_USAGE
Questa tabella contiene una riga per 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 della colonna. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema della tabella della colonna. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
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 non ha 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 |
Il nome dello schema della tabella. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo gli indici che soddisfano uno dei seguenti requisiti:
- Uno dei privilegi di controllo dell'accesso granulare
SELECT,INSERToUPDATEviene concesso a livello di colonna su tutte le colonne dell'indice al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic. - Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERT,UPDATEoDELETEviene concesso nella tabella che contiene l'indice 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 della tabella dell'indice. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
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 intercalati in una tabella principale, come descritto in Creazione di un indice secondario. Questa colonna contiene il nome della tabella principale o una stringa vuota se l'indice non è con interfoliazione. |
IS_UNIQUE |
BOOL |
Indica se le chiavi di 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo gli indici che soddisfano uno dei seguenti requisiti:
- Uno dei privilegi di controllo dell'accesso granulare
SELECT,INSERToUPDATEviene concesso a livello di colonna su tutte le colonne dell'indice al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic. - Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERToUPDATEviene concesso sulla tabella con indice 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 della tabella dell'indice. Il nome è vuoto per lo schema predefinito e contiene un valore per gli altri schemi. Questa colonna contiene sempre un valore. |
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), a partire da 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 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. |
COLUMN_OPTIONS
Questa tabella filtrata per riga elenca le opzioni delle colonne 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 quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare le opzioni solo
per le colonne che soddisfano uno dei seguenti requisiti:
- Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERToUPDATEviene concesso direttamente nella colonna al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o apublic. - Uno dei privilegi di controllo dell'accesso granulare dell'accesso
SELECT,INSERToUPDATEviene concesso sulla tabella che contiene 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 altri schemi (ad esempio, lo stesso INFORMATION_SCHEMA).
Questa colonna non è mai null. |
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 del 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 come parte di una query. L'espressione risultante dall'analisi del valore deve essere convertibile in OPTION_TYPE. Questa colonna non è mai null. |
SEQUENCES
Questa tabella elenca i metadati delle sequenze. SEQUENCES viene filtrata per riga in base ai privilegi di accesso granulare, se un utente con privilegi di accesso granulare la sta interrogando.
| 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 filtrata per riga in base ai privilegi di accesso granulare, se un utente con
privilegi di accesso granulare 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 del tipo di dati che corrisponde al tipo di questo valore dell'opzione. |
OPTION_VALUE |
STRING |
Il valore dell'opzione di sequenza. L'espressione che risulta dall'analisi del valore deve consentire il cast a OPTION_TYPE. |
SPANNER_STATISTICS
Questa tabella elenca i pacchetti di statistiche dell'ottimizzatore 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 altri schemi (ad esempio, lo stesso INFORMATION_SCHEMA).
Questa colonna non è mai null. |
PACKAGE_NAME |
STRING |
Il nome del pacchetto di statistiche. |
ALLOW_GC |
BOOL |
FALSE se il pacchetto di statistiche è esente dalla garbage collection; 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo le viste su cui il privilegio di controllo dell'accesso granulare dell'accesso SELECT è 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 |
Il nome del catalogo. Sempre una stringa vuota. |
TABLE_SCHEMA |
STRING |
Il nome dello schema. Una stringa vuota se non ha 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 vista. 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 granulare dell'accesso, 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 quel ruolo possono visualizzare tutti i ruoli del database. Tutte le altre entità possono visualizzare solo i ruoli del 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 altrimenti. |
ROLE_GRANTEES
Questa tabella filtrata per riga elenca tutte le appartenenze 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 in questa vista. Tutte le altre entità possono visualizzare solo le appartenenze ai ruoli concesse al ruolo di database corrente o a un ruolo di cui il ruolo di 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 concessa questa appartenenza. |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concessa questa appartenenza. |
CHANGE_STREAMS
Questa tabella filtrata per riga elenca tutti i flussi di 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo
le modifiche in tempo reale per cui il privilegio di controllo dell'accesso granulare dell'accesso SELECT è concesso 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 delle modifiche in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_SCHEMA |
STRING |
Il nome dello schema di questo stream di modifiche in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_NAME |
STRING |
Il nome del feed delle modifiche. |
ALL |
BOOL |
TRUE se questo stream di modifiche in tempo reale monitora l'intero database.
FALSE se questo stream di modifiche in tempo reale monitora tabelle o colonne specifiche. |
CHANGE_STREAM_TABLES
Questa tabella filtrata per riga contiene informazioni sulle tabelle e sui modifiche in tempo reale che le monitorano. Ogni riga descrive una tabella e un feed delle 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 quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare solo le righe per i flussi di modifiche in tempo reale per i quali il privilegio SELECT è concesso al ruolo del database corrente, ai ruoli di cui il ruolo del database corrente è membro o a public.
I dati in CHANGE_STREAM_TABLES non includono le relazioni implicite tra le tabelle e le modifiche in tempo reale che monitorano l'intero database.
| Nome colonna | Tipo | Descrizione |
|---|---|---|
CHANGE_STREAM_CATALOG |
STRING |
Il nome del catalogo delle modifiche in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_SCHEMA |
STRING |
Il nome dello schema delle modifiche in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_NAME |
STRING |
Il nome del feed delle modifiche 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 le modifiche in tempo reale di questa riga monitorano l'intera tabella a cui fa riferimento questa riga. In caso contrario, FALSE. |
CHANGE_STREAM_COLUMNS
Questa tabella filtrata per riga contiene informazioni sulle colonne della tabella e sui flussi di modifiche che le monitorano. Ogni riga descrive un feed delle modifiche in tempo reale e una colonna. Se un flusso di modifiche in tempo reale monitora un'intera tabella, le colonne di quella tabella non vengono visualizzate in questa vista.
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. Tutte le altre entità possono visualizzare solo le righe per i flussi di modifiche in tempo reale per cui il privilegio SELECT è concesso 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 delle modifiche in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_SCHEMA |
STRING |
Il nome dello schema delle modifiche in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_NAME |
STRING |
Il nome del feed delle 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 le 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo le opzioni per i flussi di modifiche in tempo reale per i quali il privilegio SELECT è concesso 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 delle modifiche in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_SCHEMA |
STRING |
Il nome dello schema delle modifiche in tempo reale. Sempre una stringa vuota. |
CHANGE_STREAM_NAME |
STRING |
Il nome del feed delle modifiche. |
OPTION_NAME |
STRING |
Il nome dell'opzione delle modifiche in tempo reale. |
OPTION_TYPE |
STRING |
Il tipo di dati dell'opzione delle modifiche in tempo reale. |
OPTION_VALUE |
STRING |
Il valore dell'opzione delle modifiche in tempo reale. |
CHANGE_STREAM_PRIVILEGES
Questa tabella filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare dell'accesso concessi su tutte le modifiche in tempo reale 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. Tutte le altre entità possono visualizzare solo i privilegi concessi sulle modifiche in tempo reale 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 contenente le modifiche in tempo reale (una stringa vuota). |
CHANGE_STREAM_SCHEMA
|
STRING
|
Il nome dello schema contenente il flusso di modifiche in tempo reale (una stringa vuota). |
CHANGE_STREAM_NAME
|
STRING
|
Il nome del feed delle modifiche. |
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 questo privilegio. |
ROUTINES
Questa tabella filtrata per 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 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. Tutte le altre entità possono visualizzare solo le funzioni di lettura dei modifiche in tempo reale su cui il privilegio di controllo dell'accesso granulare dell'accesso EXECUTE è concesso 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 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 filtrata per 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 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. Tutte le altre entità possono visualizzare solo le opzioni per le funzioni di lettura dei flussi di modifiche in tempo reale per le quali il privilegio di controllo dell'accesso granulare dell'accesso EXECUTE è concesso 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 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 per riga definisce gli argomenti per ogni funzione di lettura delle modifiche in tempo reale. Ogni riga descrive un argomento per una funzione di lettura dei flussi di 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo i parametri per le funzioni di lettura dei flussi di modifiche in tempo reale per i quali il privilegio di controllo dell'accesso granulare dell'accesso EXECUTE è concesso 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 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. |
PARAMETER_DEFAULT |
STRING |
Il valore predefinito del parametro o NULL per i parametri che non hanno un valore predefinito. |
ROUTINE_PRIVILEGES
Questa tabella filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare dell'accesso concessi su tutte le funzioni di lettura dei 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo i privilegi concessi alle funzioni di lettura delle modifiche in tempo reale per il ruolo del database corrente, per i ruoli di cui il ruolo del database corrente è membro o per 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 questo privilegio. |
ROLE_TABLE_GRANTS
Questa tabella filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare dell'accesso 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo i privilegi concessi su tabelle e viste al ruolo database corrente e ai ruoli di cui il ruolo 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 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. |
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 dell'accesso 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo i privilegi concessi alle colonne per il ruolo database corrente e per i ruoli di cui il ruolo database corrente è membro, escluso public.
La vista include i privilegi SELECT, INSERT e UPDATE che la colonna eredita dalla tabella o dalla vista che la contiene.
| 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 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo i privilegi concessi sui flussi di modifiche in tempo reale al ruolo database attuale e ai ruoli di cui il ruolo database 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 il feed delle modifiche. |
CHANGE_STREAM_NAME |
STRING |
Il nome del feed delle modifiche. |
PRIVILEGE_TYPE |
STRING |
Il tipo di privilegio (solo SELECT). |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso questo privilegio. |
ROLE_MODEL_GRANTS
Questa tabella filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare dell'accesso 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 quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo i privilegi concessi su tabelle e viste al ruolo database corrente e ai ruoli di cui il ruolo 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 viene 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 su tutte le funzioni di lettura dei 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 quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare solo i privilegi concessi alle funzioni di lettura dei modifiche in tempo reale per il ruolo database attuale e per i ruoli di cui il ruolo database attuale è 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 delle 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 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 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, 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 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 in questa vista. Tutte le altre entità possono visualizzare i privilegi solo per i modelli per i quali il privilegio di controllo dell'accesso granulare dell'accesso EXECUTE è concesso al ruolo di database corrente, ai ruoli di cui il ruolo di 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 dell'accesso. |
PRIVILEGE_TYPE |
STRING |
EXECUTE> |
GRANTEE |
STRING |
Il nome del ruolo del database a cui viene concesso questo privilegio. |
PROPERTY_GRAPHS
Questa tabella filtrata per riga elenca i grafi 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 di questa vista. Tutte le altre entità possono visualizzare i grafici delle proprietà solo se soddisfano i requisiti per visualizzare tutte le tabelle utilizzate per definire i grafici.
| 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 ha un nome. |
PROPERTY_GRAPH_NAME |
STRING |
Il nome del grafico delle 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 ha un nome. | |
name |
string |
Il nome del grafico delle proprietà. | |
nodeTables |
array<object> |
Un elenco di oggetti GraphElementTable per i nodi. |
|
edgeTables |
array<object> |
Un elenco di oggetti GraphElementTable per gli archi. |
|
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. |
|
dynamicLabelExpr |
string |
Il nome della colonna che contiene la definizione di DYNAMIC LABEL. |
|
dynamicPropertyExpr |
string |
Il nome della colonna che contiene la definizione di DYNAMIC PROPERTIES. |
|
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 archi. | |
nodeTableColumns |
array<string> |
Il nome delle colonne associate alle chiavi di origine e di destinazione dei 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_schema,
t.table_name,
t.parent_table_name
FROM
information_schema.tables AS t
WHERE
t.table_catalog = ''
AND
t.table_schema NOT IN ('information_schema', 'SPANNER_SYS')
AND t.table_type = 'BASE TABLE'
ORDER BY
t.table_catalog,
t.table_schema,
t.table_name
Restituisci 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 nello schema predefinito:
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'
Restituisci le informazioni su ogni indice nello schema dell'utente:
SELECT
t.table_schema,
t.table_name,
t.index_name,
t.parent_table_name
FROM
information_schema.indexes AS t
WHERE
t.table_catalog = ''
AND
t.table_schema NOT IN ('information_schema', 'SPANNER_SYS')
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 quelle predefinite:
SELECT
t.table_schema,
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 NOT IN ('information_schema', 'SPANNER_SYS')
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;
Restituisci tutte le sequenze:
SELECT
*
FROM
information_schema.sequences;
Restituisce tutte le opzioni di sequenza per la sequenza denominata "MySequence"
SELECT
*
FROM
information_schema.sequence_options WHERE name="MySequence";
Restituisci i nomi di tutti i grafi delle proprietà e le relative definizioni:
SELECT
property_graph_name,
property_graph_metadata_json
FROM
information_schema.property_graphs
Restituisci i nomi di tutti i grafi 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.