Schema delle informazioni per i database di dialetti GoogleSQL

Lo schema delle informazioni è uno schema integrato comune a tutti i database Spanner. Puoi eseguire query SQL sulle tabelle in INFORMATION_SCHEMA per recuperare i metadati dello schema per un database.

Ad esempio, la seguente query recupera i nomi di tutte le tabelle definite dall'utente in un database:

  SELECT
    table_name
  FROM
    information_schema.tables
  WHERE
    table_schema = ''

Gli utenti con un controllo dell'accesso granulare vedono risultati filtrati per alcune tabelle INFORMATION_SCHEMA in base al loro ruolo del database. Per ulteriori informazioni, consulta Informazioni sul controllo dell'accesso granulare.

Utilizzo

Le tabelle INFORMATION_SCHEMA sono disponibili solo tramite le interfacce SQL, ad esempio:

  • API executeQuery
  • Il comando gcloud spanner databases execute-sql
  • la pagina Spanner Studio di un database nella console Google Cloud

Altri metodi di lettura singoli non supportano INFORMATION_SCHEMA.

Alcune note aggiuntive sull'utilizzo di INFORMATION_SCHEMA:

Filtri per righe nelle tabelle information_schema

Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader (o ai membri di quel ruolo) possono visualizzare tutte le righe in tutte le tabelle information_schema. Per altre entità, per alcune tabelle, le righe vengono filtrate in base al ruolo attuale del database. Le descrizioni delle tabelle e delle viste nelle sezioni seguenti indicano in che modo viene applicato il filtro delle righe a ogni tabella e vista.

Tabelle in INFORMATION_SCHEMA

Le seguenti sezioni descrivono le tabelle nella sezione INFORMATION_SCHEMA per i database di dialetti SQL di Google.

SCHEMATA

La tabella INFORMATION_SCHEMA.SCHEMATA elenca gli schemi presenti nel database. Includono lo schema delle informazioni e gli schemi denominati, che contengono le tabelle definite.

Nome colonna Tipo Descrizione
CATALOG_NAME STRING Il nome del catalogo. Questa colonna esiste per la compatibilità con le tabelle dello schema di informazioni standard SQL. Questa colonna è sempre una stringa vuota.
SCHEMA_NAME STRING Il nome dello schema. Nome per gli schemi denominati o "" per lo schema predefinito.
PROTO_BUNDLE STRING Se il database contiene istruzioni per il bundle proto, questa colonna fornisce informazioni sul bundle proto utilizzato nello schema. Questa colonna è NULL se non esiste un bundle proto nel database.

DATABASE_OPTIONS

Questa tabella elenca le opzioni impostate nel database.

Nome colonna Tipo Descrizione
CATALOG_NAME STRING Il nome del catalogo. Sempre una stringa vuota.
SCHEMA_NAME STRING Il nome dello schema. Una stringa vuota, se senza nome.
OPTION_NAME STRING Il nome dell'opzione di database.
OPTION_TYPE STRING Il tipo di dati dell'opzione di database.
OPTION_VALUE STRING Il valore dell'opzione di database.

TABLES

Questa tabella con filtri di riga elenca le tabelle e le viste nel database. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare solo le tabelle che soddisfano uno dei seguenti requisiti:

  • I privilegi di controllo dell'accesso granulare SELECT, INSERT, UPDATE o DELETE nella tabella vengono concessi al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure a public.
  • I privilegi SELECT, INSERT o UPDATE vengono concessi per qualsiasi colonna della tabella al ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro oppure 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 Nome della tabella, visualizzazione o sinonimo.
TABLE_TYPE STRING Il tipo di tabella. Per le tabelle ha il valore BASE TABLE; per le viste ha il valore VIEW; per i sinonimi ha il valore SYNONYM.
PARENT_TABLE_NAME STRING Il nome della tabella padre se questa tabella è con interleaving, altrimenti NULL.
ON_DELETE_ACTION STRING Questo valore è impostato su CASCADE o NO ACTION per le tabelle con interleaving e su NULL per gli altri tipi. Per ulteriori informazioni, vedi le istruzioni TABLE.
SPANNER_STATE STRING Una tabella può passare attraverso più stati durante la creazione, se sono previste operazioni collettive. Ad esempio, quando la tabella viene creata con una chiave esterna che richiede il backfill dei suoi indici. Gli stati possibili sono:
  • ADDING_FOREIGN_KEY: aggiunta delle chiavi esterne della tabella.
  • WAITING_FOR_COMMIT: finalizzazione della modifica allo schema.
  • COMMITTED: è stato eseguito il commit della modifica allo schema per creare la tabella. Non puoi scrivere nella tabella finché non viene eseguito il commit della modifica.
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:
  • IN: la tabella non ha una relazione padre-figlio. Una riga di questa tabella può esistere indipendentemente dall'esistenza della riga della tabella padre.
  • IN PARENT: la tabella ha una relazione di tipo principale-secondario. Una riga di questa tabella richiede l'esistenza della relativa riga della tabella padre.
  • Una stringa vuota indica che la tabella non ha relazioni di interfoliazione.
ROW_DELETION_POLICY_EXPRESSION STRING Il testo dell'espressione che definisce il criterio di eliminazione delle righe della tabella. Ad esempio, OLDER_THAN(CreatedAt, INTERVAL 1 DAY) o OLDER_THAN(ExpiredDate, INTERVAL 0 DAY).

COLUMNS

Questa tabella con filtri di riga elenca le colonne di una tabella. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare solo le colonne che soddisfano uno dei seguenti requisiti:

  • Tutti i privilegi di controllo dell'accesso granulare SELECT, INSERT o UPDATE vengono concessi direttamente nella colonna al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure a public.
  • Viene concesso qualsiasi privilegio di controllo dell'accesso granulare SELECT, INSERT o UPDATE nella tabella contenente la colonna del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public.
Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Non utilizzato. Sempre una stringa vuota.
TABLE_SCHEMA STRING Non utilizzato. Sempre una stringa vuota.
TABLE_NAME STRING Il nome della tabella.
COLUMN_NAME STRING Il nome della colonna.
ORDINAL_POSITION INT64 La posizione ordinale della colonna nella tabella, che inizia con un valore pari a 1.
COLUMN_DEFAULT STRING

Una rappresentazione stringa dell'espressione SQL per il valore predefinito della colonna. NULL se la colonna non ha un valore predefinito.

Nota: prima di marzo 2022, COLUMN_DEFAULT utilizzava il tipo BYTES.

DATA_TYPE STRING Incluso per soddisfare lo standard SQL. Sempre NULL. Vedi la colonna SPANNER_TYPE
IS_NULLABLE STRING Una stringa che indica se alla colonna è possibile assegnare valori null. In conformità con lo standard SQL, la stringa è YES o NO, anziché un valore booleano.
SPANNER_TYPE STRING Il tipo di dati della colonna.
IS_GENERATED STRING Una stringa che indica se la colonna è stata generata. La stringa è ALWAYS per una colonna generata o NEVER per una colonna non generata.
GENERATION_EXPRESSION STRING Una stringa che rappresenta l'espressione SQL di una colonna generata. NULL se la colonna non è una colonna generata.
IS_STORED STRING Una stringa che indica se la colonna generata è archiviata. La stringa è sempre YES per le colonne generate e NULL per le colonne non generate.
SPANNER_STATE STRING Stato attuale della colonna. Una nuova colonna generata archiviata aggiunta a una tabella esistente può passare attraverso più stati osservabili dall'utente prima di essere completamente utilizzabile. I valori possibili sono:
  • WRITE_ONLY: è in corso il backfill della colonna. Nessuna lettura consentita.
  • COMMITTED: la colonna è completamente utilizzabile.

COLUMN_PRIVILEGES

Questa tabella filtrata di righe elenca tutti i privilegi concessi a livello di colonna a qualsiasi ruolo del database, tra cui public. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa visualizzazione. Tutte le altre entità possono vedere i privilegi solo per le colonne che soddisfano uno dei seguenti requisiti:

  • Tutti i privilegi di controllo dell'accesso granulare SELECT, INSERT o UPDATE vengono concessi direttamente nella colonna al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure a public.
  • Viene concesso qualsiasi privilegio di controllo dell'accesso granulare SELECT, INSERT o UPDATE nella tabella contenente la colonna del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public.
Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Non utilizzato. Sempre una stringa vuota.
TABLE_SCHEMA STRING Non utilizzato. Sempre una stringa vuota.
TABLE_NAME STRING Il nome della tabella che contiene la colonna dei privilegi.
COLUMN_NAME STRING Il nome della colonna con privilegi.
PRIVILEGE_TYPE STRING SELECT, INSERT, UPDATE
GRANTEE STRING Il nome del ruolo del database a cui viene concesso il privilegio.

TABLE_PRIVILEGES

Questa tabella filtrata di righe elenca tutti i privilegi concessi a livello di tabella ai ruoli del database, tra cui public. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare i privilegi solo per le tabelle a cui viene concesso uno qualsiasi dei privilegi di controllo dell'accesso dell'accesso granulare SELECT, INSERT, UPDATE o DELETE al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public.

Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Non utilizzato. Sempre una stringa vuota.
TABLE_SCHEMA STRING Non utilizzato. Sempre una stringa vuota.
TABLE_NAME STRING Il nome della tabella in cui vengono concessi i privilegi di controllo granulare degli accessi.
PRIVILEGE_TYPE STRING Uno tra SELECT, INSERT, UPDATE e DELETE
GRANTEE STRING Il nome del ruolo del database a cui viene concesso il privilegio.

TABLE_CONSTRAINTS

Questa tabella contiene una riga per ogni vincolo definito per le tabelle nel database.

Nome colonna Tipo Descrizione
CONSTRAINT_CATALOG STRING È sempre una stringa emptry.
CONSTRAINT_SCHEMA STRING Il nome dello schema del vincolo. Una stringa vuota, se senza nome.
CONSTRAINT_NAME STRING Il nome del vincolo.
TABLE_CATALOG STRING Il nome del catalogo della tabella vincolata. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema della tabella vincolata. Una stringa vuota, se senza nome.
TABLE_NAME STRING Il nome della tabella vincolata.
CONSTRAINT_TYPE STRING Il tipo di vincolo. I valori possibili sono:
  • PRIMARY KEY
  • FOREIGN KEY
  • CHECK
  • UNIQUE
IS_DEFERRABLE STRING Sempre NO.
INITIALLY_DEFERRED STRING Sempre NO.
ENFORCED STRING Sempre YES.

CONSTRAINT_TABLE_USAGE

Questa tabella elenca le tabelle che definiscono o vengono utilizzate dai vincoli. Include le tabelle che definiscono i vincoli PRIMARY KEY e UNIQUE. Include anche le tabelle di riferimento delle definizioni di FOREIGN KEY.

Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Il nome del catalogo della tabella vincolata. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema della tabella vincolata. Una stringa vuota, se senza nome.
TABLE_NAME STRING Il nome della tabella vincolata.
CONSTRAINT_CATALOG STRING Il nome del catalogo del vincolo. Sempre una stringa vuota.
CONSTRAINT_SCHEMA STRING Il nome dello schema del vincolo. Una stringa vuota, se senza nome.
CONSTRAINT_NAME STRING Il nome del vincolo.

REFERENTIAL_CONSTRAINTS

Questa tabella contiene una riga relativa a ogni vincolo FOREIGN KEY.

Nome colonna Tipo Descrizione
CONSTRAINT_CATALOG STRING Il nome del catalogo di FOREIGN KEY. Sempre una stringa vuota.
CONSTRAINT_SCHEMA STRING Il nome dello schema della CHIAVE FOREIGN. Una stringa vuota, se senza nome.
CONSTRAINT_NAME STRING Il nome della CHIAVE FOREIGN.
UNIQUE_CONSTRAINT_CATALOG STRING Il nome del catalogo del vincolo PRIMARY KEY o UNIQUE a cui fa riferimento FOREIGN KEY. Sempre una stringa vuota.
UNIQUE_CONSTRAINT_SCHEMA STRING Il nome dello schema del vincolo PRIMARY KEY o UNIQUE a cui fa riferimento la FOREIGN KEY. Una stringa vuota, se senza nome.
UNIQUE_CONSTRAINT_NAME STRING Il nome del vincolo PRIMARY KEY o UNIQUE a cui fa riferimento FOREIGN KEY.
MATCH_OPTION STRING Sempre SIMPLE.
UPDATE_RULE STRING Sempre NO ACTION.
DELETE_RULE STRING CASCADE o NO ACTION.
SPANNER_STATE STRING Stato attuale della chiave esterna. Spanner non inizia ad applicare il vincolo finché non vengono creati e sottoposti a backfill gli indici di supporto della chiave esterna. Quando gli indici sono pronti, Spanner inizia ad applicare il vincolo per le nuove transazioni mentre convalida i dati esistenti. I valori possibili e gli stati che rappresentano sono:
  • BACKFILLING_INDEXES: è in corso il backfill degli indici.
  • VALIDATING_DATA: è in corso la convalida dei dati esistenti e delle nuove scritture.
  • WAITING_FOR_COMMIT: le operazioni collettive con chiave esterna sono state completate correttamente oppure non ne è stata richiesta nessuna, ma la chiave esterna è ancora in attesa.
  • COMMITTED: è stato eseguito il commit della modifica dello schema.

CHECK_CONSTRAINTS

La tabella information_schema.CHECK_CONSTRAINTS contiene una riga relativa a ogni vincolo CHECK definito dalla parola chiave CHECK o NOT NULL.

Nome colonna Tipo Descrizione
CONSTRAINT_CATALOG STRING Il nome del catalogo del vincolo. Questa colonna non è mai nulla, ma sempre una stringa vuota.
CONSTRAINT_SCHEMA STRING Il nome dello schema del vincolo. Una stringa vuota, se senza nome.
CONSTRAINT_NAME STRING Il nome del vincolo. Questa colonna non è mai nulla. Se non specificato esplicitamente nella definizione dello schema, viene assegnato un nome definito dal sistema.
CHECK_CLAUSE STRING Le espressioni del vincolo CHECK. Questa colonna non è mai nulla.
SPANNER_STATE STRING Lo stato attuale del vincolo CHECK. Questa colonna non è mai nulla. Gli stati possibili sono i seguenti:
  • VALIDATING: Spanner sta convalidando i dati esistenti.
  • COMMITTED: non è attiva alcuna modifica dello schema per questo vincolo.

KEY_COLUMN_USAGE

Questa tabella con filtro di riga contiene una riga per ogni colonna delle tabelle di TABLE_CONSTRAINTS che sono vincolate come chiavi da un vincolo PRIMARY KEY, FOREIGN KEY o UNIQUE. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare solo le colonne che soddisfano i seguenti criteri:

  • Tutti i privilegi di controllo dell'accesso granulare SELECT, INSERT o UPDATE vengono concessi direttamente nella colonna al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure a public.
  • Viene concesso qualsiasi privilegio di controllo dell'accesso granulare SELECT, INSERT o UPDATE nella tabella contenente la colonna del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public.
Nome colonna Tipo Descrizione
CONSTRAINT_CATALOG STRING Il nome del catalogo del vincolo. Sempre una stringa vuota.
CONSTRAINT_SCHEMA STRING Il nome dello schema del vincolo. Questa colonna non è mai nulla. Una stringa vuota, se senza nome.
CONSTRAINT_NAME STRING Il nome del vincolo.
TABLE_CATALOG STRING Il nome del catalogo della colonna vincolata. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema della colonna vincolata. Questa colonna non è mai nulla. Una stringa vuota, se senza nome.
TABLE_NAME STRING Il nome della tabella della colonna vincolata.
COLUMN_NAME STRING Il nome della colonna.
ORDINAL_POSITION INT64 La posizione ordinale della colonna all'interno della chiave del vincolo, che inizia con un valore 1.
POSITION_IN_UNIQUE_CONSTRAINT INT64 Per FOREIGN KEY, la posizione ordinale della colonna all'interno del vincolo univoco, che inizia con il valore 1. Questa colonna è nulla per altri tipi di vincoli.

CONSTRAINT_COLUMN_USAGE

Questa tabella contiene una riga relativa a ogni colonna utilizzata da un vincolo. Include le colonne PRIMARY KEY e UNIQUE, oltre alle colonne di riferimento dei vincoli FOREIGN KEY.

Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Il nome del catalogo della tabella a colonne. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema della tabella a colonne. Questa colonna non è mai nulla. Una stringa vuota, se senza nome.
TABLE_NAME STRING Il nome della tabella della colonna.
COLUMN_NAME STRING Il nome della colonna utilizzata dal vincolo.
CONSTRAINT_CATALOG STRING Il nome del catalogo del vincolo. Sempre una stringa vuota.
CONSTRAINT_SCHEMA STRING Il nome dello schema del vincolo. Una stringa vuota, se senza nome.
CONSTRAINT_NAME STRING Il nome del vincolo.

TABLE_SYNONYMS

In questa tabella sono elencate le informazioni sui sinonimi per la tabella.

Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Non utilizzato. Sempre una stringa vuota.
TABLE_SCHEMA STRING Non utilizzato. Sempre una stringa vuota.
TABLE_NAME STRING Il nome della tabella.
SYNONYM_CATALOG STRING Il nome del catalogo per il sinonimo.
SYNONYM_SCHEMA STRING Il nome dello schema per il sinonimo.
SYNONYM_TABLE_NAME STRING Il nome della tabella per il sinonimo.

INDEXES

Questa tabella con filtri di riga elenca gli indici nel database. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo gli indici che soddisfano uno dei seguenti requisiti:

  • Tutti i privilegi di controllo dell'accesso granulare SELECT, INSERT o UPDATE vengono concessi a livello di colonna su tutte le colonne nell'indice del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro, o a public.
  • Tutti i privilegi di controllo dell'accesso granulare SELECT, INSERT, UPDATE o DELETE vengono concessi nella tabella contenente l'indice del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o per public.
Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Il nome del catalogo. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema. Una stringa vuota, se senza nome.
TABLE_NAME STRING Il nome della tabella.
INDEX_NAME STRING Il nome dell'indice. Le tabelle con una specifica PRIMARY KEY hanno una voce di pseudo indice generata con il nome PRIMARY_KEY, che consente di determinare i campi della chiave primaria.
INDEX_TYPE STRING Il tipo di indice. Il tipo è INDEX o PRIMARY_KEY.
PARENT_TABLE_NAME STRING Gli indici secondari possono essere con interleaving in una tabella padre, come discusso in Creazione di un indice secondario. Questa colonna contiene il nome della tabella padre o una stringa vuota se l'indice non è con interleaving.
IS_UNIQUE BOOL Indica se le chiavi di indice devono essere univoche.
IS_NULL_FILTERED BOOL Se l'indice include voci con valori NULL.
INDEX_STATE STRING Stato attuale dell'indice. I valori possibili e gli stati che rappresentano sono:
  • PREPARE: creazione di tabelle vuote per un nuovo indice.
  • WRITE_ONLY: backfill dei dati per un nuovo indice.
  • WRITE_ONLY_CLEANUP: pulizia di un nuovo indice.
  • WRITE_ONLY_VALIDATE_UNIQUE: è in corso il controllo dell'univocità dei dati in un nuovo indice.
  • READ_WRITE: normale operazione di indice.
SPANNER_IS_MANAGED BOOL TRUE se l'indice è gestito da Spanner. In caso contrario, FALSE. Gli indici di supporto secondari per le chiavi esterne sono gestiti da Spanner.

INDEX_COLUMNS

Questa tabella con filtri di riga elenca le colonne in un indice. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo gli indici che soddisfano uno dei seguenti requisiti:

  • Tutti i privilegi di controllo dell'accesso granulare SELECT, INSERT o UPDATE vengono concessi a livello di colonna su tutte le colonne nell'indice del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro, o a public.
  • Tutti i privilegi di controllo dell'accesso granulare SELECT, INSERT o UPDATE vengono concessi nella tabella contenente l'indice del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public.
Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Il nome del catalogo. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema. Una stringa vuota, se senza nome.
TABLE_NAME STRING Il nome della tabella.
INDEX_NAME STRING Il nome dell'indice.
COLUMN_NAME STRING Il nome della colonna.
ORDINAL_POSITION INT64 La posizione ordinale della colonna nell'indice (o chiave primaria), che inizia con un valore pari a 1. Questo valore è NULL per le colonne non chiave (ad esempio, le colonne specificate nella clausola STORING di un indice).
COLUMN_ORDERING STRING L'ordine della colonna. Il valore è ASC o DESC per le colonne chiave e NULL per le colonne non chiave (ad esempio, le colonne specificate nella clausola STORING di un indice).
IS_NULLABLE STRING Una stringa che indica se alla colonna è possibile assegnare valori null. In conforme allo standard SQL, la stringa è YES o NO, anziché un valore booleano.
SPANNER_TYPE STRING Il tipo di dati della colonna.

COLUMN_OPTIONS

Questa tabella con filtri di riga elenca le opzioni delle colonne in una tabella. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono visualizzare le opzioni solo per le colonne che soddisfano uno dei seguenti requisiti:

  • Tutti i privilegi di controllo dell'accesso granulare SELECT, INSERT o UPDATE vengono concessi direttamente nella colonna al ruolo di database attuale ai ruoli di cui il ruolo attuale è membro oppure a public.
  • Viene concesso qualsiasi privilegio di controllo dell'accesso granulare SELECT, INSERT o UPDATE nella tabella contenente la colonna del ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public.
Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Il nome del catalogo. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema. Il nome è vuoto per lo schema predefinito e non è vuoto per gli altri schemi (ad esempio, lo stesso INFORMATION_SCHEMA). Questa colonna non è mai nulla.
TABLE_NAME STRING Il nome della tabella.
COLUMN_NAME STRING Il nome della colonna.
OPTION_NAME STRING Un identificatore SQL che identifica in modo univoco l'opzione. Questo identificatore è la chiave della clausola OPTIONS nel DDL.
OPTION_TYPE STRING Nome del tipo di dati che rappresenta il tipo di questo valore dell'opzione.
OPTION_VALUE STRING Un valore letterale SQL che descrive il valore di questa opzione. Il valore di questa colonna deve essere analizzabile come parte di una query. L'espressione risultante dall'analisi del valore deve essere trasmettibile a OPTION_TYPE. Questa colonna non è mai nulla.

SEQUENCES

Questa tabella elenca i metadati delle sequenze. SEQUENCES viene filtrato per righe in base a privilegi di accesso granulari, se un utente con privilegi di accesso granulari sta eseguendo query su questo elemento.

Nome colonna Tipo Descrizione
CATALOG STRING Il nome del catalogo contenente la sequenza.
SCHEMA STRING Il nome dello schema contenente la sequenza.
NAME STRING Il nome della sequenza.
DATA_TYPE STRING Il tipo dei valori della sequenza. Utilizza il tipo di dati INT64.

SEQUENCE_OPTIONS

Questa tabella contiene le opzioni di configurazione per le sequenze. SEQUENCE_OPTIONS viene applicato un filtro per riga in base a privilegi di accesso granulari se un utente con privilegi di accesso granulare esegue query.

Nome colonna Tipo Descrizione
CATALOG STRING Il nome del catalogo contenente la sequenza.
SCHEMA STRING Il nome dello schema contenente la sequenza.
NAME STRING Il nome della sequenza.
OPTION_NAME STRING Il nome dell'opzione della sequenza.
OPTION_TYPE STRING Nome del tipo di dati che rappresenta il tipo di questo valore dell'opzione.
OPTION_VALUE STRING Il valore dell'opzione di sequenza. L'espressione risultante dall'analisi del valore deve consentire la trasmissione a OPTION_TYPE.

SPANNER_STATISTICS

Questa tabella elenca i pacchetti di statistiche disponibili per l'ottimizzazione delle query.

Nome colonna Tipo Descrizione
CATALOG_NAME STRING Il nome del catalogo. Sempre una stringa vuota.
SCHEMA_NAME STRING Il nome dello schema. Il nome è vuoto per lo schema predefinito e non è vuoto per gli altri schemi (ad esempio, lo stesso INFORMATION_SCHEMA). Questa colonna non è mai nulla.
PACKAGE_NAME STRING Il nome del pacchetto di statistiche.
ALLOW_GC BOOL FALSE se il pacchetto di statistiche è esente dalla garbage collection; in caso contrario, TRUE.
Questo attributo deve essere impostato su FALSE per poter fare riferimento al pacchetto di statistiche in un suggerimento o tramite l'API client.

VIEWS

Questa tabella con filtro di righe elenca le viste nel database. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le viste per cui viene concesso il privilegio di controllo dell'accesso granulare SELECT al ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public.

Nome colonna Tipo Descrizione
TABLE_CATALOG STRING Il nome del catalogo. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema. Una stringa vuota, se senza nome.
TABLE_NAME STRING Il nome della vista.
VIEW_DEFINITION STRING Il testo SQL della query che definisce la vista.
SECURITY_TYPE STRING Il tipo di sicurezza della vista. INVOKER o DEFINER.

Per ulteriori informazioni, consulta Informazioni sulle viste.

ROLES

Questa tabella filtrata di righe elenca i ruoli di database definiti per il controllo dell'accesso granulare, inclusi i ruoli di sistema. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutti i ruoli del database. Tutte le altre entità possono vedere solo i ruoli di database a cui è stato concesso l'accesso direttamente o tramite ereditarietà.

Nome colonna Tipo Descrizione
ROLE_NAME STRING Il nome del ruolo del database.
IS_SYSTEM BOOL TRUE se il ruolo del database è un ruolo di sistema; FALSE in caso contrario.

ROLE_GRANTEES

Questa tabella filtrata di righe elenca tutte le appartenenze ai ruoli concesse in modo esplicito a tutti i ruoli del database. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le appartenenze ai ruoli concesse al ruolo di database attuale o a un ruolo di cui il ruolo attuale è membro.

Poiché tutti i ruoli del database appartengono al ruolo pubblico, i risultati omettono i record per l'appartenenza implicita al ruolo pubblico.

Nome colonna Tipo Descrizione
ROLE_NAME STRING Il nome del ruolo del database in cui viene concessa l'appartenenza.
GRANTEE STRING Il nome del ruolo del database a cui è concessa l'appartenenza.

CHANGE_STREAMS

Questa tabella con filtro di righe elenca tutti i modifiche in tempo reale di un database e note che monitorano l'intero database rispetto a tabelle o colonne specifiche. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono vedere solo i flussi di modifiche in cui viene concesso il privilegio di controllo dell'accesso granulare SELECT al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public.

Nome colonna Tipo Descrizione
CHANGE_STREAM_CATALOG STRING Il nome del catalogo del flusso di modifiche. Sempre una stringa vuota.
CHANGE_STREAM_SCHEMA STRING Il nome dello schema di questo flusso di modifiche. Sempre una stringa vuota.
CHANGE_STREAM_NAME STRING Il nome della modifica in tempo reale.
ALL BOOL TRUE se questa modifica in tempo reale monitora l'intero database. FALSE se questa modifica in tempo reale monitora tabelle o colonne specifiche.

CHANGE_STREAM_TABLES

Questa tabella con filtri di riga contiene informazioni sulle tabelle e sui modifiche in tempo reale che le monitorano. Ogni riga descrive una tabella e una modifica in tempo reale. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe di questa vista. Tutte le altre entità possono vedere solo le righe per modifiche in tempo reale in cui viene concesso il privilegio SELECT al ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public.

I dati in CHANGE_STREAM_TABLES non includono le relazioni implicite tra tabelle e modifiche in tempo reale che monitorano l'intero database.

Nome colonna Tipo Descrizione
CHANGE_STREAM_CATALOG STRING Il nome del catalogo del flusso di modifiche. Sempre una stringa vuota.
CHANGE_STREAM_SCHEMA STRING Il nome dello schema della modifica in tempo reale. Sempre una stringa vuota.
CHANGE_STREAM_NAME STRING Il nome della modifica in tempo reale a cui fa riferimento questa riga.
TABLE_CATALOG STRING Il nome del catalogo della tabella. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema della tabella. Sempre una stringa vuota.
TABLE_NAME STRING Il nome della tabella a cui fa riferimento questa riga.
ALL_COLUMNS BOOL TRUE se il flusso di modifiche di questa riga monitora l'intera tabella a cui fa riferimento questa riga. Altrimenti, FALSE.

CHANGE_STREAM_COLUMNS

Questa tabella con filtri di riga contiene informazioni sulle colonne della tabella e sui flussi di modifiche che le monitorano. Ogni riga descrive un flusso di modifiche e una colonna. Se una modifica in tempo reale monitora un'intera tabella, le colonne al suo interno non vengono mostrate in questa visualizzazione.

Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono visualizzare solo le righe per modifiche in tempo reale per cui viene concesso il privilegio SELECT al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public.

Nome colonna Tipo Descrizione
CHANGE_STREAM_CATALOG STRING Il nome del catalogo del flusso di modifiche. Sempre una stringa vuota.
CHANGE_STREAM_SCHEMA STRING Il nome dello schema della modifica in tempo reale. Sempre una stringa vuota.
CHANGE_STREAM_NAME STRING Il nome della modifica in tempo reale.
TABLE_CATALOG STRING Il nome del catalogo della tabella. Sempre una stringa vuota.
TABLE_SCHEMA STRING Il nome dello schema della tabella. Sempre una stringa vuota.
TABLE_NAME STRING Il nome della tabella a cui fa riferimento questa riga.
COLUMN_NAME STRING Il nome della colonna a cui fa riferimento questa riga.

CHANGE_STREAM_OPTIONS

Questa tabella con filtri di riga contiene le opzioni di configurazione per le modifiche in tempo reale. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le opzioni per modifiche in tempo reale per cui viene concesso il privilegio SELECT al ruolo attuale di database, ai ruoli di cui il ruolo attuale è membro o a public.

Nome colonna Tipo Descrizione
CHANGE_STREAM_CATALOG STRING Il nome del catalogo del flusso di modifiche. Sempre una stringa vuota.
CHANGE_STREAM_SCHEMA STRING Il nome dello schema della modifica in tempo reale. Sempre una stringa vuota.
CHANGE_STREAM_NAME STRING Il nome della modifica in tempo reale.
OPTION_NAME STRING Il nome dell'opzione di modifiche in tempo reale.
OPTION_TYPE STRING Il tipo di dati dell'opzione di modifica in tempo reale.
OPTION_VALUE STRING Il valore dell'opzione di modifica in tempo reale.

CHANGE_STREAM_PRIVILEGES

Questa tabella filtrata di righe elenca tutti i privilegi di controllo dell'accesso granulare concessi in tutti i flussi di modifiche a qualsiasi ruolo di database, tra cui public. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi nelle modifiche in tempo reale al ruolo di database attuale, ai ruoli di cui il ruolo attuale è membro o a public.

Nome colonna Tipo Descrizione
CHANGE_STREAM_CATALOG STRING Il nome del catalogo contenente il flusso di modifiche (una stringa vuota).
CHANGE_STREAM_SCHEMA STRING Il nome dello schema contenente il flusso di modifiche (una stringa vuota).
CHANGE_STREAM_NAME STRING Il nome della modifica in tempo reale.
PRIVILEGE_TYPE STRING SELECT (l'unico privilegio consentito per le modifiche in tempo reale).
GRANTEE STRING Il nome del ruolo del database a cui viene concesso il privilegio.

ROUTINES

Questa tabella con filtri di riga elenca tutte le funzioni di lettura delle modifiche in tempo reale di un database. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le funzioni di lettura dei flussi di dati in cui viene concesso il privilegio di controllo dell'accesso granulare dell'accesso EXECUTE al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public.

Nome colonna Tipo Descrizione
SPECIFIC_CATALOG STRING Il nome del catalogo della routine. Sempre una stringa vuota.
SPECIFIC_SCHEMA STRING Il nome dello schema della routine. Sempre una stringa vuota.
SPECIFIC_NAME STRING Il nome della routine. Identifica in modo univoco la routine anche se il suo nome è sovraccarico.
ROUTINE_CATALOG STRING Il nome del catalogo della routine. Sempre una stringa vuota.
ROUTINE_SCHEMA STRING Il nome dello schema della routine. Sempre una stringa vuota.
ROUTINE_NAME STRING Il nome della routine. (Potrebbe essere duplicato in caso di sovraccarico.)
ROUTINE_TYPE STRING Il tipo di routine (FUNCTION o PROCEDURE). Sempre FUNCTION
DATA_TYPE STRING Il tipo di dati restituito dalla routine
ROUTINE_BODY STRING Il tipo di corpo della routine (SQL o EXTERNAL).
ROUTINE_DEFINITION STRING La definizione di ROUTINE_BODY.
SECURITY_TYPE STRING Il tipo di sicurezza della routine. Sempre INVOKER.

ROUTINE_OPTIONS

Questa tabella con filtri di riga contiene una riga per ogni opzione per ogni funzione di lettura dei flussi di modifiche definita.

Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo le opzioni per le funzioni di lettura delle modifiche in tempo reale per cui al ruolo attuale del database viene concesso il privilegio di controllo granulare degli accessi EXECUTE, ai ruoli di cui l'attuale ruolo del database è membro o a public.

Nome colonna Tipo Descrizione
SPECIFIC_CATALOG STRING Il nome del catalogo della routine. Sempre una stringa vuota.
SPECIFIC_SCHEMA STRING Il nome dello schema della routine. Sempre una stringa vuota.
SPECIFIC_NAME STRING Il nome della routine. Identifica in modo univoco la routine in caso di sovraccarico del nome.
OPTION_NAME STRING Un identificatore SQL che identifica in modo univoco l'opzione.
OPTION_TYPE STRING Il tipo di dati di OPTION_VALUE.
OPTION_VALUE STRING Un valore letterale SQL che descrive il valore di questa opzione. Il valore di questa colonna deve essere analizzabile come parte di una query.

PARAMETERS

Questa tabella filtrata di righe definisce gli argomenti per ogni funzione di lettura delle modifiche in tempo reale. Ogni riga descrive un argomento per una funzione di lettura delle modifiche in tempo reale.

Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i parametri per le funzioni di lettura delle modifiche in tempo reale per cui al ruolo attuale del database è concesso il privilegio di controllo granulare degli accessi EXECUTE, ai ruoli di cui quest'ultimo è membro o a public.

Nome colonna Tipo Descrizione
SPECIFIC_CATALOG STRING Il nome del catalogo della routine. Sempre una stringa vuota.
SPECIFIC_SCHEMA STRING Il nome dello schema della routine. Sempre una stringa vuota.
SPECIFIC_NAME STRING Il nome della routine. Identifica in modo univoco la routine in caso di sovraccarico del nome.
ORDINAL_POSITION INT64 La posizione ordinale del parametro nella routine, a partire da un valore pari a 1.
PARAMETER_NAME STRING Il nome del parametro.
DATA_TYPE STRING Il tipo di dati del parametro.

ROUTINE_PRIVILEGES

Questa tabella filtrata di righe elenca tutti i privilegi di controllo dell'accesso granulare concessi a tutte le funzioni di lettura dei flussi di modifiche a qualsiasi ruolo di database, tra cui public. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi alle funzioni di lettura delle modifiche in tempo reale al ruolo di database attuale, ai ruoli di cui l'attuale ruolo del database è membro oppure a public.

Nome colonna Tipo Descrizione
SPECIFIC_CATALOG STRING Il nome del catalogo della routine. Sempre una stringa vuota.
SPECIFIC_SCHEMA STRING Il nome dello schema della routine. Sempre una stringa vuota.
SPECIFIC_NAME STRING Il nome della routine. Identifica in modo univoco la routine in caso di sovraccarico del nome.
PRIVILEGE_TYPE STRING Sempre EXECUTE.
GRANTEE STRING Il nome del ruolo del database a cui viene concesso il privilegio.

ROLE_TABLE_GRANTS

Questa tabella con filtro di righe elenca tutti i privilegi granulari di controllo dell'accesso dell'accesso concessi su tutte le tabelle e le viste a qualsiasi ruolo del database, tra cui public. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi per tabelle e viste al ruolo di database attuale e ai ruoli di cui il ruolo attuale è membro, escluso public.

Nome colonna Tipo Descrizione
GRANTOR STRING Non utilizzato. Sempre NULL.
GRANTEE STRING Il nome del ruolo del database a cui viene concesso il privilegio.
TABLE_CATALOG STRING Non utilizzato. Sempre una stringa vuota.
TABLE_SCHEMA STRING Non utilizzato. Sempre una stringa vuota.
TABLE_NAME STRING Il nome della tabella o della visualizzazione.
PRIVILEGE_TYPE STRING Il tipo di privilegio (SELECT, INSERT, UPDATE o DELETE).
IS_GRANTABLE STRING Non utilizzato. Sempre NO.

ROLE_COLUMN_GRANTS

Questa tabella con filtro di righe elenca tutti i privilegi granulari di controllo dell'accesso dell'accesso concessi su tutte le colonne a qualsiasi ruolo del database, tra cui public. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi per le colonne al ruolo attuale del database e ai ruoli di cui il ruolo attuale è membro, escluso public.

La vista include i privilegi SELECT, INSERT e UPDATE che la colonna eredita dalla tabella o dalla vista contenente la colonna.

Nome colonna Tipo Descrizione
GRANTOR STRING Non utilizzato. Sempre NULL.
GRANTEE STRING Il nome del ruolo del database a cui viene concesso questo privilegio.
TABLE_CATALOG STRING Non utilizzato. Sempre una stringa vuota.
TABLE_SCHEMA STRING Non utilizzato. Sempre una stringa vuota.
TABLE_NAME STRING Il nome della tabella o della vista che contiene la colonna.
COLUMN_NAME STRING Il nome della colonna per cui viene concesso il privilegio.
PRIVILEGE_TYPE STRING Il tipo di privilegio (SELECT, INSERT o UPDATE).
IS_GRANTABLE STRING Non utilizzato. Sempre NO.

ROLE_CHANGE_STREAM_GRANTS

Questa tabella filtrata di righe elenca i privilegi SELECT concessi per tutti i flussi di modifiche a qualsiasi ruolo di database, incluso public. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi nelle modifiche in tempo reale al ruolo di database attuale e ai ruoli di cui il ruolo attuale è membro, escluso public.

Nome colonna Tipo Descrizione
CHANGE_STREAM_CATALOG STRING Non utilizzato. Sempre una stringa vuota.
CHANGE_STREAM_SCHEMA STRING Il nome dello schema che contiene la modifica in tempo reale.
CHANGE_STREAM_NAME STRING Il nome della modifica in tempo reale.
PRIVILEGE_TYPE STRING Il tipo di privilegio (solo SELECT).
GRANTEE STRING Il nome del ruolo del database a cui viene concesso il privilegio.

ROLE_MODEL_GRANTS

Questa tabella filtrata di righe elenca tutti i privilegi di controllo dell'accesso granulare concessi su tutti i modelli a qualsiasi ruolo del database, tra cui public. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere solo i privilegi concessi per tabelle e viste al ruolo di database attuale e ai ruoli di cui il ruolo attuale è membro, escluso public.

Nome colonna Tipo Descrizione
GRANTOR STRING Non utilizzato. Sempre NULL.
GRANTEE STRING Il nome del ruolo del database a cui viene concesso il privilegio.
MODEL_CATALOG STRING Non utilizzato. Sempre una stringa vuota.
MODEL_SCHEMA STRING Non utilizzato. Sempre una stringa vuota.
MODEL_NAME STRING Il nome del modello.
PRIVILEGE_TYPE STRING Il tipo di privilegio (EXECUTE).
IS_GRANTABLE STRING Non utilizzato. Sempre NO.

ROLE_ROUTINE_GRANTS

Questa tabella filtrata di righe elenca i privilegi EXECUTE concessi per tutte le funzioni di lettura dei flussi di modifiche a qualsiasi ruolo di database, incluso public. Le entità con autorizzazioni a livello di database IAM e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa visualizzazione. Tutte le altre entità possono vedere solo i privilegi concessi alle funzioni di lettura delle modifiche in tempo reale per il ruolo di database attuale e i ruoli di cui l'attuale ruolo del database è membro, escluso public.

Nome colonna Tipo Descrizione
GRANTOR STRING Non utilizzato. Sempre NULL.
GRANTEE STRING Il nome del ruolo a cui viene concesso il privilegio.
SPECIFIC_CATALOG STRING Il nome del catalogo di routine.
SPECIFIC_SCHEMA STRING Il nome dello schema di routine.
SPECIFIC_NAME STRING Il nome della routine. Identifica in modo univoco la routine in caso di sovraccarico del nome.
PRIVILEGE_TYPE STRING Il tipo di privilegio concesso. Sempre EXECUTE.
IS_GRANTABLE STRING Non utilizzato. Sempre NO.

MODELS

Questa tabella elenca tutti i modelli di un database.

Nome colonna Tipo Descrizione
MODEL_CATALOG STRING Il nome del catalogo. Sempre una stringa vuota.
MODEL_SCHEMA STRING Il nome dello schema di questo modello. Sempre una stringa vuota.
MODEL_NAME STRING Il nome del modello.
IS_REMOTE BOOL TRUE se si tratta di un modello remoto. FALSE se questo è un modello gestito.

MODEL_OPTIONS

Questa tabella contiene le opzioni di configurazione per i modelli.

Nome colonna Tipo Descrizione
MODEL_CATALOG STRING Il nome del catalogo. Sempre una stringa vuota.
MODEL_SCHEMA STRING Il nome dello schema di questo modello. Sempre una stringa vuota.
MODEL_NAME STRING Il nome del modello.
OPTION_NAME STRING Il nome dell'opzione del modello.
OPTION_TYPE STRING Il tipo di dati dell'opzione del modello.
OPTION_VALUE STRING Il valore dell'opzione del modello.

MODEL_COLUMNS

Questa tabella elenca le colonne in un modello.

Nome colonna Tipo Descrizione
MODEL_CATALOG STRING Il nome del catalogo. Sempre una stringa vuota.
MODEL_SCHEMA STRING Il nome dello schema di questo modello. Sempre una stringa vuota.
MODEL_NAME STRING Il nome del modello.
COLUMN_KIND STRING Tipo di colonna del modello. Uno dei seguenti: "INPUT" o "OUTPUT".
COLUMN_NAME STRING Il nome della colonna.
DATA_TYPE STRING Il tipo di dati SQL standard della colonna.
ORDINAL_POSITION INT64 Posizione ordinale della colonna, a partire dal valore 1, per preservare l'ordine delle colonne dichiarate.
IS_EXPLICIT BOOL TRUE se la colonna è stata specificata esplicitamente nel DDL, FALSE se la colonna è stata rilevata dall'endpoint.

MODEL_COLUMN_OPTIONS

Questa tabella contiene le opzioni di configurazione per le colonne del modello.

Nome colonna Tipo Descrizione
MODEL_CATALOG STRING Il nome del catalogo. Sempre una stringa vuota.
MODEL_SCHEMA STRING Il nome dello schema di questo modello. Sempre una stringa vuota.
MODEL_NAME STRING Il nome del modello.
COLUMN_KIND STRING Tipo di colonna del modello. Uno dei seguenti: "INPUT" o "OUTPUT".
COLUMN_NAME STRING Il nome della colonna.
OPTION_NAME STRING Il nome dell'opzione della colonna del modello.
OPTION_TYPE STRING Il tipo di dati dell'opzione della colonna del modello.
OPTION_VALUE STRING Il valore dell'opzione della colonna del modello.

MODEL_PRIVILEGES

Questa tabella filtrata di righe elenca tutti i privilegi concessi a livello di modello ai ruoli del database, tra cui public. Le entità con autorizzazioni IAM a livello di database e quelle a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader o ai membri di quel ruolo possono visualizzare tutte le righe in questa vista. Tutte le altre entità possono vedere i privilegi solo per i modelli per cui EXECUTE è concesso il privilegio di controllo dell'accesso granulare al ruolo attuale del database, ai ruoli di cui il ruolo attuale è membro o a public.

Nome colonna Tipo Descrizione
MODEL_CATALOG STRING Non utilizzato. Sempre una stringa vuota.
MODEL_SCHEMA STRING Non utilizzato. Sempre una stringa vuota.
MODEL_NAME STRING Il nome del modello su cui vengono concessi i privilegi granulari di controllo dell'accesso dell'accesso.
PRIVILEGE_TYPE STRING EXECUTE>
GRANTEE STRING Il nome del ruolo del database a cui viene concesso il privilegio.

Esempi

Restituisce informazioni su ogni tabella nello schema dell'utente:

SELECT
  t.table_name,
  t.parent_table_name
FROM
  information_schema.tables AS t
WHERE
  t.table_catalog = ''
  AND
  t.table_schema = ''
ORDER BY
  t.table_catalog,
  t.table_schema,
  t.table_name

Restituisce il nome di tutte le tabelle in INFORMATION_SCHEMA:

SELECT
  t.table_name
FROM
  information_schema.tables AS t
WHERE
  t.table_schema = "SPANNER_SYS"

Restituisce informazioni sulle colonne nella tabella utente MyTable:

SELECT
  t.column_name,
  t.spanner_type,
  t.is_nullable
FROM
  information_schema.columns AS t
WHERE
  t.table_catalog = ''
  AND
  t.table_schema = ''
  AND
  t.table_name = 'MyTable'
ORDER BY
  t.table_catalog,
  t.table_schema,
  t.table_name,
  t.ordinal_position

Restituisce informazioni sulla regione leader predefinita per il database. Restituisce un valore vuoto se la leader predefinita non è impostata:

SELECT
  s.option_name,
  s.option_value
FROM
  information_schema.database_options s
WHERE
  s.option_name = 'default_leader'

Restituisce informazioni su ogni indice nello schema dell'utente:

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

Restituisce tutte le colonne che utilizzano opzioni diverse da quella predefinita:

SELECT
  t.table_name,
  t.column_name,
  t.option_type,
  t.option_value,
  t.option_name
FROM
  information_schema.column_options AS t
WHERE
  t.table_catalog = ''
AND
  t.table_schema = ''

Restituisce le opzioni di database correlate all'ottimizzatore correnti:

SELECT
  s.option_name,
  s.option_value
FROM
  information_schema.database_options s
WHERE
  s.schema_name=''
  AND s.option_name IN ('optimizer_version',
    'optimizer_statistics_package')

Restituisce tutti i pacchetti di statistiche disponibili:

SELECT
  *
FROM
  information_schema.spanner_statistics;

Restituisci tutte le sequenze:

SELECT
  *
FROM
  information_schema.sequences;

Restituisce tutte le opzioni per la sequenza denominata "MySequence"

SELECT
  *
FROM
  information_schema.sequence_options WHERE name="MySequence";

Passaggi successivi