Lo schema di informazioni è uno schema integrato comune a ogni
PostgreSQL standard. Puoi eseguire query SQL sulle tabelle nel
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 = 'public'
Utilizzo
Le tabelle
information_schema
sono disponibili solo tramite le interfacce SQL, per esempio:- API
executeQuery
- Il comando
gcloud spanner databases execute-sql
- La pagina Query di un database nella console Google Cloud.
Altri metodi di lettura singola non supportano
information_schema
.- API
- Le query su
information_schema
possono utilizzare un'inattività elevata e limitata, o di limiti di timestamp esatti per l'inattività. - Se usi un database di dialetti GoogleSQL, consulta Schema di informazioni per i database di dialetti GoogleSQL.
Differenze rispetto a information_schema
per PostgreSQL
Le tabelle nei database di dialetti information_schema
per PostgreSQL includono colonne da
nelle tabelle in information_schema
per PostgreSQL open source e
alcuni casi includono anche colonne di Spanner. In queste tabelle, il parametro
Le colonne PostgreSQL open source vengono visualizzate per prime e nello stesso ordine
per un database PostgreSQL open source ed eventuali colonne distinte
Spanner viene aggiunto successivamente. Query scritte per
la versione PostgreSQL open source di information_schema
dovrebbe funzionare senza
durante l'utilizzo dei database di dialetti PostgreSQL in Google Cloud CLI.
Altre differenze significative nei database di dialetti information_schema
per PostgreSQL sono:
- Alcune colonne delle tabelle per PostgreSQL open source sono disponibili, ma non compilati in database di dialetti PostgreSQL.
- I database di dialetti PostgreSQL utilizzano
public
per il nome dello schema predefinito. - I nomi dei vincoli generati automaticamente utilizzano un formato diverso da PostgreSQL open source.
- Tabelle relative alle funzionalità PostgreSQL open source che non sono supportati nei database di dialetti PostgreSQL.
- Alcune tabelle disponibili con Spanner, ma non
PostgreSQL open source, ad esempio
database_options
,index_columns
,indexes
espanner_statistics
sono disponibili.
Filtri righe in information_schema
tabelle e visualizzazioni
Le entità che dispongono di autorizzazioni IAM a livello di database
alle entità a cui è stato concesso l'accesso al sistema spanner_info_reader
ruolo (o ai membri di quel ruolo) possono visualizzare tutti
righe in tutte le tabelle e le viste information_schema
. Per altre entità,
Spanner filtra le righe in base al ruolo di database attuale. La
le descrizioni delle tabelle e delle viste nelle sezioni seguenti indicano
Spanner filtra le righe per ogni tabella e vista.
Tabelle in information_schema
per database di dialetti PostgreSQL
Le tabelle e le visualizzazioni in information_schema
sono compatibili con le tabelle
e viste nel information_schema
di PostgreSQL open source.
Le seguenti sezioni descrivono le tabelle e le visualizzazioni in information_schema
per i database di dialetti PostgreSQL.
applicable_roles
Questa vista filtrata di righe elenca tutte le appartenenze ai ruoli concesse in modo esplicito
per tutti i ruoli del database. Entità con IAM a livello di database
autorizzazioni e entità a cui è stato concesso l'accesso
spanner_info_reader
ruolo di sistema o i membri di quel ruolo possono visualizzare tutte le righe in
questa vista. Tutte le altre entità possono vedere solo le appartenenze ai ruoli
al ruolo attuale del database o a un ruolo di cui il database attuale
ruolo è un membro.
Poiché tutti i ruoli del database fanno parte del pubblico , i risultati omettono i record per appartenenza implicita al ruolo pubblico.
Nome colonna | Tipo | Descrizione |
---|---|---|
grantee |
character varying |
Il nome del ruolo del database a cui è concessa l'appartenenza. |
role_name |
character varying |
Il nome del ruolo del database padre in cui è presente questa appartenenza concesso. |
is_grantable |
character varying |
Non utilizzato. Sempre NO . |
change_stream_columns
Questa vista con filtri di riga contiene informazioni sulle colonne della tabella e sulla modifica che li guardano. 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 mostra in questa visualizzazione.
Le entità che dispongono di autorizzazioni IAM a livello di database
alle entità a cui è stato concesso l'accesso al ruolo di sistema spanner_info_reader
oppure ai membri di quel ruolo possono vedere tutte le righe in questa visualizzazione. Tutte le altre entità
può visualizzare solo le righe per le modifiche in tempo reale a cui è stato concesso il privilegio SELECT
al ruolo di database attuale, ai ruoli che l'attuale ruolo di database
o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
change_stream_catalog |
character varying |
Il nome del database. |
change_stream_schema |
character varying |
Il nome dello schema della modifica in tempo reale. Per i database di dialetti PostgreSQL, il valore predefinito
è public . |
change_stream_name |
character varying |
Il nome della modifica in tempo reale. |
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema della tabella. Per i database di dialetti PostgreSQL, il valore predefinito
è public . |
table_name |
character varying |
Il nome della tabella a cui fa riferimento questa riga. |
column_name |
character varying |
Il nome della colonna a cui fa riferimento questa riga. |
change_stream_options
Questa visualizzazione filtrata per riga contiene le opzioni di configurazione per le modifiche in tempo reale.
Entità con autorizzazioni IAM a livello di database e entità che
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o a membri
di quel ruolo possono vedere tutte le righe di questa visualizzazione. Tutte le altre entità possono visualizzare solo
per le modifiche in tempo reale per cui viene concesso il privilegio SELECT
all'amministratore
ruolo attuale di database, ai ruoli di cui il ruolo attuale è membro,
o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
change_stream_catalog |
character varying |
Il nome del database. |
change_stream_schema |
character varying |
Il nome dello schema della modifica in tempo reale. Per i database di dialetti PostgreSQL, il valore predefinito
è public . |
change_stream_name |
character varying |
Il nome della modifica in tempo reale. |
option_name |
character varying |
Il nome dell'opzione di modifiche in tempo reale. |
option_type |
character varying |
Il tipo di dati dell'opzione di modifica in tempo reale. |
option_value |
character varying |
Il valore dell'opzione di modifica in tempo reale. |
change_stream_privileges
Questa vista filtrata di righe elenca tutti i privilegi granulari di controllo dell'accesso dell'accesso concessi a ogni modifica
flussi di dati a qualsiasi ruolo di database, tra cui public
. Le entità con
le autorizzazioni e le entità IAM a livello di database
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai suoi membri
può vedere tutte le righe in questa visualizzazione. Tutte le altre entità possono visualizzare solo i privilegi
per modifiche in tempo reale al ruolo di database corrente, ai ruoli di cui
ruolo attuale di database è un membro o per public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
grantor |
character varying |
Non utilizzato. Sempre NULL . |
grantee |
character varying |
Il nome del ruolo del database a cui viene concesso il privilegio. |
change_stream_catalog |
character varying |
Il nome del database. |
change_stream_schema |
character varying |
Il nome dello schema che contiene la modifica in tempo reale.
Il valore predefinito è public per i database di dialetti PostgreSQL. |
change_stream_name |
character varying |
Il nome della modifica in tempo reale. |
privilege_type |
character varying |
Il tipo di privilegio (solo SELECT ). |
is_grantable |
character varying |
Non utilizzato. Sempre NO . |
change_stream_tables
Questa vista con filtri di riga contiene informazioni sulle tabelle e sulle modifiche in tempo reale
che li guardano. Ogni riga descrive una tabella e una modifica in tempo reale. Presidi
che dispongono di autorizzazioni e entità IAM a livello di database che sono state
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai suoi membri
può vedere tutte le righe in questa visualizzazione. Tutte le altre entità possono visualizzare solo le righe per
modifiche in tempo reale per cui viene concesso il privilegio SELECT
all'attuale
ruolo di database, ai ruoli di cui il ruolo attuale è membro oppure per
public
.
I dati in change_stream_tables
non includono le relazioni implicite
tra le tabelle e modifiche in tempo reale
che monitorano l'intero database.
Nome colonna | Tipo | Descrizione |
---|---|---|
change_stream_catalog |
character varying |
Il nome del database. |
change_stream_schema |
character varying |
Il nome dello schema della modifica in tempo reale. Per i database di dialetti PostgreSQL, il valore predefinito
è public . |
change_stream_name |
character varying |
Il nome della modifica in tempo reale a cui fa riferimento questa riga. |
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema della tabella. Per i database di dialetti PostgreSQL, il valore predefinito
è public . |
table_name |
character varying |
Il nome della tabella a cui fa riferimento questa riga. |
all_columns |
character varying |
YES se la modifica in tempo reale di questa riga monitora l'intero
tabella a cui fa riferimento questa riga. Altrimenti, NO . In conformità con
standard SQL, la stringa è YES o NO ,
piuttosto che un valore booleano. |
change_streams
Questa vista filtrata di righe elenca tutti i modifiche in tempo reale di un database e segnala
quelli monitorano l'intero database rispetto a tabelle o colonne specifiche. Presidi
che dispongono di autorizzazioni e entità IAM a livello di database che sono state
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai suoi membri
può vedere tutte le righe in questa visualizzazione. Tutte le altre entità possono vedere solo la modifica
flussi per i quali all'utente viene concesso il privilegio di controllo dell'accesso granulare SELECT
ruolo di database, ai ruoli di cui il ruolo attuale è membro oppure per
public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
change_stream_catalog |
character varying |
Il nome del database. |
change_stream_schema |
character varying |
Il nome dello schema di questo flusso di modifiche. Per i database di dialetti PostgreSQL, il valore predefinito
è public .
|
change_stream_name |
character varying |
Il nome della modifica in tempo reale. |
all |
character varying |
YES se questa modifica in tempo reale monitora l'intero database.
NO se questa modifica in tempo reale monitora tabelle o colonne specifiche.
In conformità allo standard SQL, la stringa è YES
o NO , anziché un valore booleano. |
check_constraints
La vista check_constraints
contiene una riga per ogni
verifica il vincolo definito dalla parola chiave CHECK
o NOT NULL
.
Nome colonna | Tipo | Descrizione |
---|---|---|
constraint_catalog |
character varying |
Il nome del database. |
constraint_schema |
character varying |
Il nome dello schema del vincolo. Il valore predefinito è public
per i database di dialetti PostgreSQL. |
constraint_name |
character varying |
Il nome del vincolo. Se il nome del vincolo non è esplicitamente specificato nello schema, viene utilizzato il nome generato automaticamente. |
check_clause |
character varying |
L'espressione del vincolo di controllo. |
spanner_state |
character varying |
Lo stato attuale del vincolo di controllo. Il possibile
sono i seguenti:
|
column_column_usage
Questa visualizzazione elenca tutte le colonne generate che dipendono da un'altra colonna di base in nella stessa tabella.
Nome colonna | Tipo | Descrizione |
---|---|---|
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella. Il nome è public per
lo schema predefinito e non vuoto per gli altri schemi (ad esempio,
information_schema ). Questa colonna non è mai nulla. |
table_name |
character varying |
Il nome della tabella che contiene le colonne generate. |
column_name |
character varying |
Il nome della colonna di base da cui dipende la colonna generata. |
dependent_column |
character varying |
Il nome della colonna generata. |
column_options
Questa visualizzazione elenca tutte le opzioni definite per le colonne della tabella di riferimento di un un vincolo di chiave esterna. La vista contiene solo le colonne nel riferimento tabella a cui ha accesso l'utente corrente (in quanto proprietario o concesso privilegiati).
Nome colonna | Tipo | Descrizione |
---|---|---|
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella esterna. Il nome è
public per lo schema predefinito e non vuoto per gli altri schemi (ad
ad esempio information_schema ). Questa colonna non è mai
null. |
table_name |
character varying |
Il nome della tabella esterna. |
column_name |
character varying |
Il nome della colonna. |
option_name |
character varying |
Un identificatore SQL che identifica in modo univoco l'opzione. Questo identificatore
è la chiave della clausola OPTIONS nel DDL.
|
option_value |
character varying |
Un valore letterale SQL che descrive il valore di questa opzione. Il valore di questo può essere analizzata come parte di una query. |
option_type |
character varying |
Nome del tipo di dati che rappresenta il tipo di questo valore dell'opzione. |
column_privileges
Questa visualizzazione filtrata a riga elenca tutti i privilegi granulari di controllo dell'accesso concessi su tutte le colonne
a qualsiasi ruolo di database, tra cui public
. Entità con IAM
a livello di database e le entità a cui è stato concesso l'accesso
spanner_info_reader
ruolo di sistema o i 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 a
l'attuale ruolo di database, ai ruoli dei quali l'attuale ruolo di database
o a public
.
La vista include i privilegi SELECT
, INSERT
e UPDATE
che
eredita dalla tabella o dalla visualizzazione che la contiene.
Nome colonna | Tipo | Descrizione |
---|---|---|
grantor |
character varying |
Non utilizzato. Sempre NULL . |
grantee |
character varying |
Il nome del ruolo del database a cui appartiene questo privilegio concesso. |
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella o la vista. La
Il valore predefinito è public per i database di dialetti PostgreSQL. |
table_name |
character varying |
Il nome della tabella o della vista che contiene la colonna. |
column_name |
character varying |
Il nome della colonna. |
privilege_type |
character varying |
Il tipo di privilegio (SELECT ,
INSERT o UPDATE ). |
is_grantable |
character varying |
Non utilizzato. Sempre NO . |
columns
Questa vista con filtro di righe fornisce informazioni su tutte le colonne e la vista della tabella
nel database. Entità con IAM a livello di database
autorizzazioni e entità a cui è stato concesso l'accesso
spanner_info_reader
ruolo di sistema o i membri di quel ruolo possono visualizzare tutte le righe in
questa vista. Tutte le altre entità possono vedere solo le colonne che hanno un controllo dell'accesso granulare
privilegi concessi a quest'ultimo (o ai privilegi SELECT
, INSERT
o UPDATE
concessi nelle tabelle contenenti il database) al ruolo attuale del database, ai ruoli
di cui il ruolo attuale del database è membro, oppure a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella. Il nome è
public per lo schema predefinito e non vuoto per gli altri schemi (ad
ad esempio information_schema ). Questa colonna non è mai
null. |
table_name |
character varying |
Il nome della tabella |
column_name |
character varying |
Il nome della colonna |
ordinal_position |
BIGINT |
La posizione ordinale della colonna nella tabella, che inizia con un valore pari a 1 |
column_default |
character varying |
Una rappresentazione stringa dell'espressione PostgreSQL open source
del valore predefinito della colonna, ad esempio '9'::bigint .
|
is_nullable |
character varying |
Una stringa che indica se alla colonna è possibile assegnare valori null. Nel
in base allo standard SQL, la stringa è YES o
NO , anziché un valore booleano. |
data_type |
character varying |
Il tipo di dati della colonna. Il valore è uno dei seguenti:
|
character_maximum_length |
BIGINT |
La lunghezza massima dichiarata per i tipi di dati stringa di caratteri e bit. Se
non è stata specificata una lunghezza massima, il valore è NULL . Se i dati
tipo di colonna non è una stringa di caratteri o bit, il valore
NULL . |
character_octet_length |
BIGINT |
Non utilizzato. Il valore è sempre NULL . |
numeric_precision |
BIGINT |
La precisione del tipo di dati numerici della colonna corrente.
Per double precision , il valore è 53. Per bigint , il valore è 64.
Per tutti gli altri tipi di dati, il valore è NULL . |
numeric_precision_radix |
BIGINT |
La base (unità) della precisione per i tipi numerici. Solo al momento
sono supportati due valori:
NULL . |
numeric_scale |
BIGINT |
Contiene la scala del tipo di colonna numerica, ovvero il numero di
le unità di base di precisione dopo il punto della radice. Per bigint ,
è 0.
Per tutti gli altri tipi di dati, il valore è NULL . |
datetime_precision |
BIGINT |
Non utilizzato. Il valore è sempre NULL . |
interval_type |
character varying |
Non utilizzato. Il valore è sempre NULL . |
interval_precision |
BIGINT |
Non utilizzato. Il valore è sempre NULL . |
character_set_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
character_set_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
character_set_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
collation_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
collation_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
collation_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
domain_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
domain_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
domain_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
udt_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
udt_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
udt_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
scope_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
scope_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
scope_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
maximum_cardinality |
BIGINT |
Non utilizzato. Il valore è sempre NULL . |
dtd_identifier |
character varying |
Non utilizzato. Il valore è sempre NULL . |
is_self_referencing |
character varying |
Non utilizzato. Il valore è sempre NULL . |
is_identity |
character varying |
Non utilizzato. Il valore è sempre NULL . |
identity_generation |
character varying |
Non utilizzato. Il valore è sempre NULL . |
identity_start |
character varying |
Non utilizzato. Il valore è sempre NULL . |
identity_increment |
character varying |
Non utilizzato. Il valore è sempre NULL . |
identity_maximum |
character varying |
Non utilizzato. Il valore è sempre NULL . |
identity_minimum |
character varying |
Non utilizzato. Il valore è sempre NULL . |
identity_cycle |
character varying |
Non utilizzato. Il valore è sempre NULL . |
is_generated |
character varying |
Una stringa che indica se la colonna è stata generata. La stringa è
ALWAYS per una colonna generata oppure NEVER
per una colonna non generata. |
generation_expression |
character varying |
Una stringa che rappresenta l'espressione SQL di una colonna generata oppure
NULL se la colonna non è una colonna generata. |
is_updatable |
character varying |
Non utilizzato. Il valore è sempre NULL . |
spanner_type |
character varying |
Una stringa che contiene il tipo della colonna compatibile con DDL. |
is_stored |
character varying |
Una stringa che indica se la colonna generata è archiviata.
La stringa è sempre YES o NO per i valori
e NULL per le colonne non generate. |
spanner_state |
character varying |
Stato attuale della colonna. Una nuova colonna generata archiviata è stata aggiunta a
una tabella esistente può passare attraverso più stati osservabili dall'utente prima di
sia completamente fruibile. I valori possibili sono:
|
constraint_column_usage
Questa vista contiene una riga per ogni colonna utilizzata da un vincolo.
- Per i vincoli
PRIMARY KEY
eCHECK
definiti dal criterioNOT NULL
parola chiave, la visualizzazione contiene quelle colonne. - Per i vincoli
CHECK
creati con la parola chiaveCHECK
, la visualizzazione include le colonne utilizzate dall'espressione del vincolo di controllo. - Per i vincoli di chiave esterna, la vista contiene le colonne del alla tabella a cui viene fatto riferimento.
- Per i vincoli
UNIQUE
, la visualizzazione contiene le colonne daKEY_COLUMN_USAGE
.
Nome colonna | Tipo | Descrizione |
---|---|---|
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella che contiene la colonna utilizzato dal vincolo. |
table_name |
character varying |
Il nome della tabella che contiene la colonna utilizzato dal vincolo. |
column_name |
character varying |
Il nome della colonna utilizzata dal vincolo. |
constraint_catalog |
character varying |
Il nome del database. |
constraint_schema |
character varying |
Il nome dello schema del vincolo. |
constraint_name |
character varying |
Il nome del vincolo. |
constraint_table_usage
Questa vista contiene una riga per ogni tabella utilizzata da un vincolo. Per i vincoli FOREIGN
KEY
, le informazioni relative alla tabella si riferiscono alle tabelle del tipo REFERENCES
una clausola. Per un vincolo di chiave univoca o primaria, questa vista identifica semplicemente
tabella a cui appartiene il vincolo. Controlla che i vincoli e i vincoli not-null siano
non inclusi in questa visualizzazione.
Nome colonna | Tipo | Descrizione |
---|---|---|
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema della tabella vincolata. |
table_name |
character varying |
Il nome della tabella utilizzato da un vincolo. |
constraint_catalog |
character varying |
Il nome del database. |
constraint_schema |
character varying |
Il nome dello schema che contiene il vincolo. |
constraint_name |
character varying |
Il nome del vincolo. |
database_options
Questa tabella elenca le opzioni impostate nel database.
Nome colonna | Tipo | Descrizione |
---|---|---|
catalog_name |
character varying |
Il nome del database. |
schema_name |
character varying |
Il nome dello schema. Il valore predefinito è public per
con i dialetti PostgreSQL. |
option_name |
character varying |
Il nome dell'opzione di database. Questo è il valore di key
nella clausola OPTIONS del DDL. |
option_type |
character varying |
Il tipo di dati dell'opzione di database. |
option_value |
character varying |
Il valore dell'opzione di database. |
enabled_roles
Questa vista con filtro di righe elenca i ruoli di database definiti. Le entità con
le autorizzazioni e le entità IAM a livello di database
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai membri di
quel ruolo può vedere tutti i ruoli del database. Tutte le altre entità possono visualizzare solo
ai ruoli di database a cui è stato concesso l'accesso, direttamente o tramite
ereditarietà. In questa visualizzazione vengono visualizzati anche tutti i ruoli di sistema ad eccezione di public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
role_name |
character varying |
Il nome del ruolo. |
spanner_is_system |
character varying |
YES se il ruolo è un ruolo di sistema. Altrimenti,
NO . |
index_columns
Questa visualizzazione elenca le colonne in un indice.
Nome colonna | Tipo | Descrizione |
---|---|---|
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene l'indice. Il valore predefinito è
public . |
table_name |
character varying |
Il nome della tabella associata all'indice. |
index_name |
character varying |
Il nome dell'indice. Tabelle con un PRIMARY KEY
hanno una voce pseudo-indice generata con il nome
PRIMARY_KEY . |
index_type |
character varying |
Il tipo di indice. I valori possibili sono PRIMARY_KEY ,
LOCAL o GLOBAL . |
column_name |
character varying |
Il nome della colonna. |
ordinal_position |
BIGINT |
La posizione ordinale della colonna nell'indice (o principale
), iniziando con il valore 1. Questo valore è NULL per gli attributi non chiave
(ad esempio, le colonne specificate nel
Clausola INCLUDE
di un indice). |
column_ordering |
character varying |
L'ordinamento della colonna. Il valore è ASC o
DESC per le colonne chiave e NULL per quelle non chiave
colonne (ad esempio, le colonne specificate nel criterio STORING
di un indice). |
is_nullable |
character varying |
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 |
character varying |
Una stringa che contiene il tipo della colonna compatibile con DDL. |
indexes
Questa visualizzazione elenca gli indici in uno schema.
Nome colonna | Tipo | Descrizione |
---|---|---|
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema. Il valore predefinito è public . |
table_name |
character varying |
Il nome della tabella. |
index_name |
character varying |
Il nome dell'indice. Tabelle create con un PRIMARY KEY
hanno una voce di pseudo-indice generata con il nome PRIMARY_KEY ,
che consente di identificare i campi della chiave primaria. |
index_type |
character varying |
Il tipo di indice. I valori includono PRIMARY_KEY ,
LOCAL o GLOBAL . |
parent_table_name |
character varying |
Gli indici secondari possono essere interlacciati in una tabella padre, come discusso in Creazione di un indice secondario. Questa colonna contiene il nome della tabella padre oppure una stringa vuota se l'indice non è con interleaving. |
is_unique |
character varying |
Indica se le chiavi di indice devono essere univoche. In conformità con SQL
standard, la stringa è YES o NO ,
invece che con un valore booleano. |
is_null_filtered |
character varying |
Se l'indice include voci con valori NULL . Nel
in base allo standard SQL, la stringa è YES o
NO , anziché un valore booleano. |
index_state |
character varying |
Stato attuale dell'indice. I valori possibili e gli stati
rappresentano:
|
spanner_is_managed |
character varying |
Se l'indice è gestito da Spanner. Ad esempio, secondario
gli indici di supporto per le chiavi esterne sono gestiti da Spanner. La
stringa è YES o NO , anziché una
Valore booleano, in conformità con lo standard SQL. |
information_schema_catalog_name
Questa tabella contiene una riga e una colonna con il nome del database.
Nome colonna | Tipo | Descrizione |
---|---|---|
catalog_name |
character varying |
Il nome del database. |
key_column_usage
Questa vista identifica tutte le colonne del database corrente a cui fa riferimento
un vincolo univoco, di chiave primaria o di chiave esterna. Per informazioni su CHECK
delle colonne dei vincoli, consulta la vista check_constraints
.
Nome colonna | Tipo | Descrizione |
---|---|---|
constraint_catalog |
character varying |
Il nome del database. |
constraint_schema |
character varying |
Il nome dello schema del vincolo. Il valore predefinito è public . |
constraint_name |
character varying |
Il nome del vincolo. |
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella che contiene
colonna vincolata. Il valore predefinito è public . |
table_name |
character varying |
Il nome della tabella che contiene la colonna limitata da questo vincolo. |
column_name |
character varying |
Il nome della colonna vincolata. |
ordinal_position |
BIGINT |
La posizione ordinale della colonna all'interno della chiave del vincolo, a partire dalla data
con un valore di 1 . |
position_in_unique_constraint |
BIGINT |
Per FOREIGN KEY , la posizione ordinale della colonna all'interno di
il vincolo univoco, che inizia con il valore 1 . Questo
ha un valore NULL per altri tipi di vincoli. |
parameters
Questa visualizzazione filtrata di righe definisce gli argomenti per ogni modifica in tempo reale letta personalizzata. Ogni riga descrive un argomento per uno di lettura delle modifiche in tempo reale.
Entità con autorizzazioni IAM a livello di database e entità che
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o a membri
di quel ruolo possono vedere tutte le righe di questa visualizzazione. Tutte le altre entità possono visualizzare solo
Parametri per le funzioni di lettura delle modifiche in tempo reale su cui il controllo dell'accesso granulare EXECUTE
il privilegio attuale viene concesso ai ruoli di cui l'attuale
ruolo database è un membro o di public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
specific_catalog |
character varying |
Il nome del database. |
specific_schema |
character varying |
Il nome dello schema della routine. Per i database di dialetti PostgreSQL, il valore predefinito
è public . |
specific_name |
character varying |
Il nome della routine. Identifica in modo univoco la routine anche se il suo nome è sovraccarico. |
ordinal_position |
bigint |
La posizione ordinale del parametro nell'elenco di argomenti del che inizia con il valore 1. |
parameter_mode |
character varying |
Non utilizzato. Sempre NULL . |
is_result |
character varying |
Non utilizzato. Sempre NULL . |
as_locator |
character varying |
Non utilizzato. Sempre NULL . |
parameter_name |
character varying |
Il nome del parametro. |
data_type |
character varying |
Il tipo di dati del parametro. Il valore è uno dei
seguite da:
|
character_maximum_length |
bigint |
Non utilizzato. Sempre NULL . |
character_octet_length |
bigint |
Non utilizzato. Il valore è sempre NULL . |
character_set_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
character_set_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
character_set_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
collation_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
collation_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
collation_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
numeric_precision |
bigint |
Non utilizzato. Il valore è sempre NULL . |
numeric_precision_radix |
bigint |
Non utilizzato. Il valore è sempre NULL . |
numeric_scale |
bigint |
Non utilizzato. Il valore è sempre NULL . |
datetime_precision |
bigint |
Non utilizzato. Il valore è sempre NULL . |
interval_type |
character varying |
Non utilizzato. Il valore è sempre NULL . |
interval_precision |
bigint |
Non utilizzato. Il valore è sempre NULL . |
udt_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
udt_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
udt_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
scope_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
scope_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
scope_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
maximum_cardinality |
bigint |
Non utilizzato. Il valore è sempre NULL . |
dtd_identifier |
character varying |
Non utilizzato. Il valore è sempre NULL . |
parameter_default |
character varying |
Non utilizzato. Il valore è sempre NULL . |
referential_constraints
Questa vista contiene una riga relativa a ogni vincolo FOREIGN KEY
. Puoi vedere solo
i vincoli per i quali disponi dell'accesso in scrittura alla tabella di riferimento. Questo
identifica anche i vincoli PRIMARY KEY
e UNIQUE
sulla
tabelle di riferimento utilizzate dalle chiavi esterne per l'applicazione dei vincoli e
azioni referenziali.
Nome colonna | Tipo | Descrizione |
---|---|---|
constraint_catalog |
character varying |
Il nome del database. |
constraint_schema |
character varying |
Il nome dello schema che contiene il vincolo di chiave esterna. La
il valore predefinito è public . |
constraint_name |
character varying |
Il nome del vincolo di chiave esterna. |
unique_constraint_catalog |
character varying |
Il nome del database. |
unique_constraint_schema |
character varying |
Il nome dello schema che contiene il vincolo di chiave univoca o primaria a cui fa riferimento il vincolo di chiave esterna. |
unique_constraint_name |
character varying |
Il nome del vincolo di chiave univoca o primaria che la chiave esterna riferimenti a vincoli. |
match_option |
character varying |
Il metodo di corrispondenza utilizzato dal vincolo di chiave esterna. Il valore è sempre
NONE .
|
update_rule |
character varying |
La regola di aggiornamento del vincolo di chiave esterna. Questo valore è sempre
NO ACTION .
|
delete_rule |
character varying |
La regola di eliminazione del vincolo di chiave esterna. Questo valore è
CASCADE o NO ACTION . |
spanner_state |
character varying |
Stato attuale della chiave esterna. Spanner non inizia
il vincolo finché gli indici di supporto della chiave esterna
e di cui è stato eseguito il backfill. 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:
|
role_change_stream_grants
Questa vista filtrata di righe elenca i privilegi SELECT
concessi per tutte le modifiche
flussi di dati a qualsiasi ruolo di database, tra cui public
. Le entità con
le autorizzazioni e le entità IAM a livello di database
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai suoi membri
può vedere tutte le righe in questa visualizzazione. Tutte le altre entità possono visualizzare solo i privilegi
per modifiche in tempo reale al ruolo di database corrente e ai ruoli di cui
il ruolo attuale del database è un membro, escluso public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
grantor |
character varying |
Non utilizzato. Sempre NULL . |
grantee |
character varying |
Il nome del ruolo del database a cui viene concesso il privilegio. |
change_stream_catalog |
character varying |
Il nome del database. |
change_stream_schema |
character varying |
Il nome dello schema che contiene la modifica in tempo reale.
Il valore predefinito è public per i database di dialetti PostgreSQL. |
change_stream_name |
character varying |
Il nome della modifica in tempo reale. |
privilege_type |
character varying |
Il tipo di privilegio (solo SELECT ). |
is_grantable |
character varying |
Non utilizzato. Sempre NO . |
role_column_grants
Questa visualizzazione filtrata a riga elenca tutti i privilegi granulari di controllo dell'accesso concessi su tutte le colonne
a qualsiasi ruolo di database, tra cui public
. Entità con livello di database
Le autorizzazioni e le entità IAM a cui è stato concesso l'accesso
spanner_info_reader
ruolo di sistema o i 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 a
il ruolo attuale del database e ai ruoli di cui l'attuale ruolo
membro, escluso public
.
La vista include i privilegi SELECT
, INSERT
e UPDATE
che
eredita dalla tabella o dalla visualizzazione che la contiene.
Nome colonna | Tipo | Descrizione |
---|---|---|
grantor |
character varying |
Non utilizzato. Sempre NULL . |
grantee |
character varying |
Il nome del ruolo del database a cui appartiene questo privilegio concesso. |
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella o la vista. La
Il valore predefinito è public per i database di dialetti PostgreSQL. |
table_name |
character varying |
Il nome della tabella o della vista che contiene la colonna. |
column_name |
character varying |
Il nome della colonna. |
privilege_type |
character varying |
Il tipo di privilegio (SELECT ,
INSERT o UPDATE ). |
is_grantable |
character varying |
Non utilizzato. Sempre NO . |
role_routine_grants
Questa vista filtrata di righe elenca i privilegi EXECUTE
concessi per tutte le modifiche
Trasmetti funzioni di lettura in modalità flusso a qualsiasi ruolo di database, tra cui public
. Le entità con
le autorizzazioni IAM a livello di database e le entità a cui è stato concesso l'accesso
spanner_info_reader
ruolo di sistema o i membri di quel ruolo possono visualizzare tutte le righe in
questa vista. Tutte le altre entità possono visualizzare solo i privilegi concessi nel flusso di modifiche
funzioni di lettura nel ruolo attuale del database e nei ruoli di cui l'attuale
il ruolo di database è un membro, escluso public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
grantor
|
character varying
|
Non utilizzato. Sempre NULL . |
grantee
|
character varying
|
Il nome del ruolo a cui è stato concesso il privilegio. |
specific_catalog
|
character varying
|
Il nome del database. |
specific_schema
|
character varying
|
Il nome dello schema della routine. Per i database di dialetti PostgreSQL, il valore predefinito
è public . |
specific_name
|
character varying
|
Il nome della routine. Identifica in modo univoco la routine anche se il suo nome è sovraccarico. |
routine_catalog
|
character varying
|
Il nome del database. |
routine_schema
|
character varying
|
Il nome dello schema della routine. L'impostazione predefinita è
public per i database di dialetti PostgreSQL. |
routine_name
|
character varying
|
Il nome della routine. (Potrebbe essere duplicato in caso di overloading.) |
privilege_type
|
character varying
|
Il tipo di privilegio concesso. Sempre EXECUTE . |
is_grantable
|
character varying
|
Non utilizzato. Sempre NO . |
role_table_grants
Questa visualizzazione filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare concessi su tutte le tabelle
e viste a qualsiasi ruolo del database, tra cui public
. Le entità con
le autorizzazioni e le entità IAM a livello di database
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai suoi membri
può vedere tutte le righe in questa visualizzazione. Tutte le altre entità possono visualizzare solo i privilegi
concessi per tabelle e viste al ruolo di database corrente e ai ruoli di cui
l'attuale ruolo di database è un membro, escluso public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
grantor |
character varying |
Non utilizzato. Sempre NULL . |
grantee |
character varying |
Il nome del ruolo del database a cui viene concesso il privilegio. |
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella o la vista. L'impostazione predefinita è
public per i database di dialetti PostgreSQL. |
table_name |
character varying |
Il nome della tabella o della visualizzazione. |
privilege_type |
character varying |
Il tipo di privilegio (SELECT , INSERT ,
UPDATE o DELETE ). |
is_grantable |
character varying |
Non utilizzato. Sempre NO . |
with_hierarchy |
character varying |
Non utilizzato. Sempre NULL . |
routine_options
Questa visualizzazione filtrata a riga contiene una riga per ciascuna opzione per ogni modifica definita la funzione di lettura del flusso.
Entità con autorizzazioni IAM a livello di database e entità che
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o a membri
di quel ruolo possono vedere tutte le righe di questa visualizzazione. Tutte le altre entità possono visualizzare solo
opzioni per le funzioni di lettura delle modifiche in tempo reale su cui il controllo dell'accesso granulare EXECUTE
il privilegio attuale viene concesso ai ruoli di cui l'attuale
ruolo database è un membro o di public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
specific_catalog
|
character varying
|
Il nome del database. |
specific_schema
|
character varying
|
Il nome dello schema della routine. L'impostazione predefinita è
public per i database di dialetti PostgreSQL. |
specific_name
|
character varying
|
Il nome della routine. Identifica in modo univoco la routine anche se il suo nome è sovraccarico. |
option_name
|
character varying
|
Il nome dell'opzione. |
option_type
|
character varying
|
Il tipo di dati dell'opzione. Il valore è uno dei seguenti:
|
option_value
|
character varying
|
Il valore dell'opzione. |
routine_privileges
Questa vista filtrata di righe elenca tutti i privilegi granulari di controllo dell'accesso dell'accesso concessi a ogni modifica
Trasmetti funzioni di lettura in modalità flusso a qualsiasi ruolo di database, tra cui public
. Entità che
dispongono di autorizzazioni e entità IAM a livello di database che sono state
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai suoi membri
può vedere tutte le righe in questa visualizzazione. Tutte le altre entità possono visualizzare solo i privilegi
concessi alle funzioni di lettura delle modifiche in tempo reale al ruolo di database attuale ai ruoli
di cui il ruolo attuale del database è membro oppure a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
grantor
|
character varying
|
Non utilizzato. Sempre NULL . |
grantee
|
character varying
|
Il nome del ruolo a cui è stato concesso il privilegio. |
specific_catalog
|
character varying
|
Il nome del database. |
specific_schema
|
character varying
|
Il nome dello schema della routine. Per i database di dialetti PostgreSQL, il valore predefinito
è public . |
specific_name
|
character varying
|
Il nome della routine. Identifica in modo univoco la routine anche se il suo nome è sovraccarico. |
routine_catalog
|
character varying
|
Il nome del database. |
routine_schema
|
character varying
|
Il nome dello schema della routine. L'impostazione predefinita è
public . |
routine_name
|
character varying
|
Il nome della routine. Potrebbe essere duplicato in caso di sovraccarico. |
privilege_type
|
character varying
|
Il tipo di privilegio concesso. |
is_grantable
|
character varying
|
Non utilizzato. Sempre NO . |
routines
Questa vista filtrata di righe elenca tutte le funzioni di lettura delle modifiche in tempo reale di un database.
Entità con autorizzazioni IAM a livello di database e entità che
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o a membri
di quel ruolo possono vedere tutte le righe di questa visualizzazione. Tutte le altre entità possono visualizzare solo
funzioni di lettura di modifiche in tempo reale su cui è assegnato il privilegio di controllo dell'accesso granulare EXECUTE
al ruolo di database attuale, ai ruoli di cui il database attuale
nel ruolo di membro, oppure per public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
specific_catalog |
character varying |
Il nome del database. |
specific_schema |
character varying |
Il nome dello schema della routine. L'impostazione predefinita è
public per i database di dialetti PostgreSQL. |
specific_name |
character varying |
Il nome della routine. Identifica in modo univoco la routine anche se il suo nome è sovraccarico. |
routine_catalog |
character varying |
Il nome del database. |
routine_schema |
character varying |
Il nome dello schema della routine. |
routine_name |
character varying |
Il nome della routine. (Potrebbe essere duplicato in caso di overloading.) |
routine_type |
character varying |
Il tipo di routine (FUNCTION o
PROCEDURE ). Sempre FUNCTION |
module_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
module_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
module_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
udt_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
udt_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
udt_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
data_type |
character varying |
Il tipo restituito della routine. Il valore è uno dei
seguite da:
|
character_maximum_length |
bigint |
Non utilizzato. Il valore è sempre NULL . |
character_octet_length |
bigint |
Non utilizzato. Il valore è sempre NULL . |
character_set_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
character_set_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
character_set_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
collation_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
collation_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
collation_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
numeric_precision /td>
| bigint |
Non utilizzato. Il valore è sempre NULL . |
numeric_precision_radix |
bigint |
Non utilizzato. Il valore è sempre NULL . |
numeric_scale |
bigint |
Non utilizzato. Il valore è sempre NULL . |
datetime_precision |
bigint |
Non utilizzato. Il valore è sempre NULL . |
interval_type |
character varying |
Non utilizzato. Il valore è sempre NULL . |
interval_precision |
bigint |
Non utilizzato. Il valore è sempre NULL . |
type_udt_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
type_udt_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
type_udt_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
scope_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
scope_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
scope_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
maximum_cardinality |
bigint |
Non utilizzato. Il valore è sempre NULL . |
dtd_identifier |
character varying |
Non utilizzato. Il valore è sempre NULL . |
routine_body |
character varying |
Il tipo di corpo della routine (SQL o
EXTERNAL ). |
routine_definition |
character varying |
Definizione per l'SQL routine_body , vuoto
negli altri casi. |
external_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
external_language |
character varying |
Non utilizzato. Il valore è sempre NULL . |
parameter_style |
character varying |
Non utilizzato. Il valore è sempre NULL . |
is_deterministic |
character varying |
Non utilizzato. Il valore è sempre NULL . |
sql_data_access |
character varying |
Non utilizzato. Il valore è sempre NULL . |
is_null_call |
character varying |
Non utilizzato. Il valore è sempre NULL . |
sql_path |
character varying |
Non utilizzato. Il valore è sempre NULL . |
schema_level_routine |
character varying |
Non utilizzato. Il valore è sempre NULL . |
max_dynamic_result_sets |
character varying |
Non utilizzato. Il valore è sempre NULL . |
is_user_defined_cast |
character varying |
Non utilizzato. Il valore è sempre NULL . |
is_implicitly_invocable |
character varying |
Non utilizzato. Il valore è sempre NULL . |
security_type |
character varying |
Il tipo di sicurezza della routine. Attualmente solo INVOKER . |
to_sql_specific_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
to_sql_specific_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
to_sql_specific_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
as_locator |
character varying |
Non utilizzato. Il valore è sempre NULL . |
created |
timestamp with time zone |
Non utilizzato. Il valore è sempre NULL . |
last_altered |
timestamp with time zone |
Non utilizzato. Il valore è sempre NULL . |
new_savepoint_level |
character varying |
Non utilizzato. Il valore è sempre NULL . |
is_udt_dependent |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_from_data_type |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_as_locator |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_char_max_length |
bigint |
Non utilizzato. Il valore è sempre NULL . |
result_cast_char_octet_length |
bigint |
Non utilizzato. Il valore è sempre NULL . |
result_cast_char_set_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_char_set_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_char_set_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_collation_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_collation_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_collation_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_numeric_precision |
bigint |
Non utilizzato. Il valore è sempre NULL . |
result_cast_numeric_precision_radix |
bigint |
Non utilizzato. Il valore è sempre NULL . |
result_cast_numeric_scale |
bigint |
Non utilizzato. Il valore è sempre NULL . |
result_cast_datetime_precision |
bigint |
Non utilizzato. Il valore è sempre NULL . |
result_cast_interval_type |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_interval_precision |
bigint |
Non utilizzato. Il valore è sempre NULL . |
result_cast_type_udt_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_type_udt_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_type_udt_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_scope_catalog |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_scope_schema |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_scope_name |
character varying |
Non utilizzato. Il valore è sempre NULL . |
result_cast_maximum_cardinality |
bigint |
Non utilizzato. Il valore è sempre NULL . |
result_cast_dtd_identifier |
character varying |
Non utilizzato. Il valore è sempre NULL . |
schemata
La vista information_schema.schemata
contiene una riga per ogni schema nella
è il database attuale. Gli schemi includono lo schema di informazioni e uno schema
schema denominato public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
catalog_name |
character varying |
Il nome del database. |
schema_name |
character varying |
Il nome dello schema. Lo schema predefinito è impostato su public
e non è vuoto per gli schemi denominati. |
schema_owner |
character varying |
Il nome del proprietario dello schema. |
default_character_set_catalog |
character varying |
Non utilizzato. |
default_character_set_schema |
character varying |
Non utilizzato. |
default_character_set_name |
character varying |
Non utilizzato. |
sql_path |
character varying |
Non utilizzato. |
effective_timestamp |
timestamp with timezone |
Il timestamp in corrispondenza del quale tutti i dati di questo schema sono stati efficace. Al momento viene utilizzato solo per lo schema predefinito. |
sequences
La visualizzazione information_schema.sequences
contiene i metadati sequences
.
Nome colonna | Tipo | Descrizione |
---|---|---|
sequence_catalog |
character varying |
Il nome del database. |
sequence_schema |
character varying |
Il nome dello schema della sequenza. Il valore predefinito è public
per un database di dialetti PostgreSQL. |
sequence_name |
character varying |
Il nome della sequenza. |
data_type |
character varying |
La sequenza supporta solo int8 . |
numeric_precision |
bigint |
Attualmente non in uso. Il valore è sempre "NULL". |
numeric_precision_radix |
bigint |
Attualmente non in uso. Il valore è sempre "NULL". |
numeric_scale |
bigint |
Attualmente non in uso. Il valore è sempre "NULL". |
start_value |
bigint |
Attualmente non in uso. Il valore è sempre "NULL". |
minimum_value |
bigint |
Attualmente non in uso. Il valore è sempre "NULL". |
maximum_value |
bigint |
Attualmente non in uso. Il valore è sempre "NULL". |
increment |
bigint |
Attualmente non in uso. Il valore è sempre "NULL". |
cycle_option |
character varying |
L'unica opzione accettata da sequence è no .
|
sequence_kind |
character varying |
Il tipo di sequenza. bit_reversed_positive è l'unico
accettabile. |
counter_start_value |
bigint |
Valore iniziale del contatore della sequenza. |
skip_range_min |
bigint |
Il valore minimo nell'intervallo ignorato. Questo valore è NULL
se non è impostato. |
skip_range_max |
bigint |
Il valore massimo nell'intervallo ignorato. Questo valore è NULL
se non è impostato. |
spanner_statistics
Questa tabella elenca i pacchetti di statistiche disponibili per l'ottimizzazione delle query.
Nome colonna | Tipo | Descrizione |
---|---|---|
catalog_name |
character varying |
Il nome del database. |
schema_name |
character varying |
Il nome dello schema. Il valore predefinito dello schema è public . |
package_name |
character varying |
Il nome del pacchetto di statistiche. |
allow_gc |
character varying |
Indica se il pacchetto di statistiche è esente dalla garbage collection. Nel
in base allo standard SQL, la stringa è YES o
NO , anziché un valore booleano. Questo attributo deve essere impostato
a NO prima di poter fare riferimento al pacchetto di statistiche in un
hint o tramite l'API client.
|
table_constraints
Questa visualizzazione contiene tutti i vincoli appartenenti alle tabelle di cui dispone l'utente corrente
a (diverso da SELECT
).
Nome colonna | Tipo | Descrizione |
---|---|---|
constraint_catalog |
character varying |
Il nome del database. |
constraint_schema |
character varying |
Il nome dello schema che contiene il vincolo. |
constraint_name |
character varying |
Il nome del vincolo. |
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella associata al vincolo. |
table_name |
character varying |
Il nome della tabella. |
constraint_type |
character varying |
Il tipo di vincolo. I valori possibili sono:
|
is_deferrable |
character varying |
Il valore è sempre NO . |
initially_deferred |
character varying |
Il valore è sempre NO . |
enforced |
character varying |
Indica se il vincolo è applicato o meno. Se un vincolo viene applicato, (dopo
raggiunge un certo stato), viene convalidata sia in fase di scrittura che
strumento di verifica dell'integrità in background. In conformità con lo standard SQL,
stringa è YES o NO , anziché una
Valore booleano. |
table_privileges
Questa visualizzazione filtrata per riga elenca tutti i privilegi di controllo dell'accesso granulare concessi su tutte le tabelle
e viste a qualsiasi ruolo del database, tra cui public
. Le entità con
le autorizzazioni e le entità IAM a livello di database
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai suoi membri
può vedere tutte le righe in questa visualizzazione. Tutte le altre entità possono visualizzare solo i privilegi
per tabelle e viste al ruolo di database corrente, ai ruoli di cui
ruolo attuale di database è un membro o per public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
grantor |
character varying |
Non utilizzato. Sempre NULL . |
grantee |
character varying |
Il nome del ruolo del database a cui viene concesso il privilegio. |
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella o la vista.
Il valore predefinito è public per i database di dialetti PostgreSQL. |
table_name |
character varying |
Il nome della tabella o della visualizzazione. |
privilege_type |
character varying |
Il tipo di privilegio (SELECT , INSERT ,
UPDATE o DELETE ). |
is_grantable |
character varying |
Non utilizzato. Sempre NO . |
that have_hierarchy |
character varying |
Non utilizzato. Sempre NULL . |
tables
Questa vista con filtro di righe elenca tutte le tabelle e tutte le viste presenti nel database attuale.
Entità con autorizzazioni IAM a livello di database e entità che
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o a membri
di quel ruolo possono vedere tutte le tabelle e le visualizzazioni. Tutte le altre entità possono visualizzare solo le tabelle
che soddisfano uno dei seguenti requisiti:
-
SELECT
,INSERT
,UPDATE
, oDELETE
controllo dell'accesso granulare vengono concessi privilegi nella tabella al ruolo attuale del database, ai ruoli di cui ruolo attuale del database è un membro o dipublic
. SELECT
,INSERT
oUPDATE
vengono concessi privilegi per qualsiasi colonna di tabella al ruolo di database corrente, ruoli di cui l'attuale ruolo di database è membro, oppure perpublic
.
Nome colonna | Tipo | Descrizione |
---|---|---|
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema che contiene la tabella o la vista. |
table_name |
character varying |
Nome della tabella, visualizzazione o sinonimo. |
table_type |
character varying |
Il tipo di tabella. I valori possibili sono "TABELLA DI BASE", "VISUALIZZA" o "SYNONYM". |
self_referencing_column_name |
character varying |
Non utilizzato. |
reference_generation |
character varying |
Non utilizzato. |
user_defined_type_catalog |
character varying |
Non utilizzato. |
user_defined_type_schema |
character varying |
Non utilizzato. |
user_defined_type_name |
character varying |
Non utilizzato. |
is_insertable_into |
character varying |
Non utilizzato. |
is_typed |
character varying |
Non utilizzato. |
commit_action |
character varying |
Non utilizzato. |
parent_table_name |
character varying |
Il nome della tabella padre se questa tabella è con interleaving oppure
NULL . |
on_delete_action |
character varying |
Questo valore è impostato su CASCADE o NO ACTION per
con interleaving e NULL negli altri casi. Consulta
Istruzioni TABLE
per ulteriori informazioni. |
spanner_state |
character varying |
Stato attuale di creazione della tabella. Una tabella può passare attraverso più stati durante la creazione, se in blocco coinvolte operazioni, ad esempio quando la tabella viene creata con chiave esterna che richiede il backfill dell'indice di riferimento. Possibile sono:
|
interleave_type |
character varying |
Se esiste una relazione padre-figlio tra questa tabella e
la tabella in cui è interlacciato. I valori possibili sono:
|
row_deletion_policy_expression |
character varying |
Una stringa contenente il testo dell'espressione che definisce l'elemento ROW
DELETION POLICY . |
table_synonyms
Questa tabella elenca informazioni sui sinonimi per la tabella.
Nome colonna | Tipo | Descrizione |
---|---|---|
CATALOG |
STRING |
Nome del catalogo contenente la tabella. |
SCHEMA |
STRING |
Nome dello schema contenente la tabella. |
TABLE_NAME |
STRING |
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. |
views
Questa vista con filtro di righe elenca tutte le viste nel database attuale. Entità che
dispongono di autorizzazioni e entità IAM a livello di database che sono state
è stato concesso l'accesso al ruolo di sistema spanner_info_reader
o ai suoi membri
può vedere tutte le viste. Tutte le altre entità possono vedere solo le visualizzazioni con
SELECT
privilegio di controllo dell'accesso granulare concesso al ruolo attuale del database.
ai ruoli di cui il ruolo attuale del database è membro o a public
.
Nome colonna | Tipo | Descrizione |
---|---|---|
table_catalog |
character varying |
Il nome del database. |
table_schema |
character varying |
Il nome dello schema. Il valore predefinito è public . |
table_name |
character varying |
Il nome della vista. |
view_definition |
character varying |
Il testo SQL della query che definisce la vista. |
check_option |
character varying |
Non utilizzato. |
is_updatable |
character varying |
Non utilizzato. |
is_insertable_into |
character varying |
Non utilizzato. |
is_trigger_updatable |
character varying |
Non utilizzato. |
is_trigger_deletable |
character varying |
Non utilizzato. |
is_trigger_insertable_into |
character varying |
Non utilizzato. |
security_type |
character varying |
Il tipo di sicurezza della vista. INVOKER o
DEFINER .
Per ulteriori informazioni, consulta Informazioni sulle viste. |
Esempi
Restituisce informazioni su ogni tabella nello schema predefinito:
SELECT
t.table_catalog,
t.table_name,
t.parent_table_name
FROM
information_schema.tables AS t
WHERE
t.table_schema = 'public'
ORDER BY
t.table_catalog,
t.table_schema,
t.table_name
Restituisce il nome di tutte le tabelle e le visualizzazioni in information_schema
per
Database di dialetti PostgreSQL:
SELECT table_name
FROM information_schema.tables
WHERE table_schema = "information_schema"
Restituisce informazioni sulle colonne nella tabella utente my_table
:
SELECT
t.ordinal_position,
t.column_name,
t.data_type,
t.spanner_type,
t.is_nullable
FROM
information_schema.columns AS t
WHERE
t.table_schema = 'public'
AND
t.table_name = 'my_table'
ORDER BY
t.ordinal_position
Restituisce informazioni su ogni indice nello schema predefinito nell'attuale database:
SELECT
t.table_name,
t.index_name,
t.parent_table_name
FROM
information_schema.indexes AS t
WHERE
t.table_schema = 'public'
AND
t.index_type != 'PRIMARY_KEY'
ORDER BY
t.table_schema,
t.table_name,
t.index_name
Restituisci 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_schema = 'public'
ORDER BY
t.table_schema,
t.table_name,
t.column_name,
t.option_name
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='public'
AND s.option_name IN ('optimizer_version',
'optimizer_statistics_package')
Restituisci tutti i pacchetti di statistiche disponibili:
SELECT *
FROM information_schema.spanner_statistics;
Passaggi successivi
- Scopri di più sugli strumenti di introspezione disponibili per per aiutarti a esaminare i problemi del database.