O esquema de informações é um esquema integrado comum a todos os bancos de dados do PostgreSQL. É possível executar consultas SQL em tabelas no information_schema
para buscar metadados de esquema para um banco de dados.
Por exemplo, a consulta a seguir busca os nomes de todas as tabelas definidas pelo usuário em um banco de dados:
SELECT
table_name
FROM
information_schema.tables
WHERE
table_schema = 'public'
Uso
As tabelas
information_schema
estão disponíveis apenas por interfaces SQL. Por exemplo:- A API
executeQuery
- O comando
gcloud spanner databases execute-sql
- A página Consulta de um banco de dados no console do Google Cloud.
Outros métodos de leitura única não oferecem suporte a
information_schema
.- A API
- É possível usar as consultas do
information_schema
com inatividades fortes e limitadas ou com limites de carimbo de data/hora de inatividade exata. - Se você estiver usando um banco de dados com dialeto GoogleSQL, consulte Esquema de informações para bancos de dados com dialeto GoogleSQL.
Diferenças em relação ao information_schema
para PostgreSQL
As tabelas no information_schema
para bancos de dados de dialeto PostgreSQL incluem colunas das
tabelas no information_schema
para PostgreSQL de código aberto e, em
alguns casos, também incluem colunas do Spanner. Nessas tabelas, as colunas do PostgreSQL de código aberto vêm primeiro e na mesma ordem que em um banco de dados PostgreSQL de código aberto, e qualquer coluna distinta do Spanner é anexada depois. As consultas gravadas para a
versão de código aberto do PostgreSQL de information_schema
devem funcionar sem
modificação ao usar bancos de dados de dialeto do PostgreSQL no Google Cloud CLI.
Outras diferenças importantes no information_schema
para bancos de dados de dialeto do PostgreSQL são:
- Algumas das colunas da tabela para o PostgreSQL de código aberto estão disponíveis, mas não são preenchidas em bancos de dados de dialeto do PostgreSQL.
- Os bancos de dados de dialeto PostgreSQL usam
public
para o nome do esquema padrão. - Os nomes de restrição gerados automaticamente usam um formato diferente dos bancos de dados PostgreSQL de código aberto.
- As tabelas relacionadas a recursos do PostgreSQL de código aberto que não têm suporte em bancos de dados de dialeto PostgreSQL não estão disponíveis.
- Algumas tabelas disponíveis com o Spanner, mas não
no PostgreSQL de código aberto, como
database_options
,index_columns
,indexes
espanner_statistics
, estão disponíveis.
Filtragem de linhas em tabelas e visualizações information_schema
Os principais que têm permissões do IAM no nível do banco de dados e
que receberam acesso ao papel do
sistema spanner_info_reader
(ou aos membros desse papel) podem acessar todas as
linhas em todas as tabelas e visualizações information_schema
. Para outros principais,
o Spanner filtra linhas com base no papel do banco de dados atual. As
descrições de tabela e visualização nas seções a seguir indicam como
o Spanner filtra linhas para cada tabela e visualização.
Tabelas em information_schema
para bancos de dados de dialeto PostgreSQL
As tabelas e visualizações no information_schema
são compatíveis com as tabelas
e visualizações no information_schema
do PostgreSQL de código aberto.
As seções a seguir descrevem as tabelas e visualizações no information_schema
para bancos de dados de dialeto do PostgreSQL.
applicable_roles
Essa visualização filtrada por linha lista todas as associações de função concedidas explicitamente a
todos os papéis do banco de dados. Os participantes que têm permissões do IAM no nível do banco de dados e os participantes que receberam acesso ao papel do sistema spanner_info_reader
ou a membros desse papel podem conferir todas as linhas nessa visualização. Todos os outros principais podem ver apenas as adesões a funções que são
concedidas à função de banco de dados atual ou a uma função da qual a função de banco de dados
atual é membro.
Como todos os papéis do banco de dados são membros da função pública, os resultados omitem registros de filiação implícita na função pública.
Nome da coluna | Tipo | Descrição |
---|---|---|
grantee |
character varying |
O nome da função do banco de dados a que o acesso é concedido. |
role_name |
character varying |
O nome da função do banco de dados pai em que essa associação é concedida. |
is_grantable |
character varying |
Não utilizado. Sempre NO . |
change_stream_columns
Essa visualização filtrada por linha contém informações sobre as colunas da tabela e as transmissões de mudança que as observam. Cada linha descreve um fluxo de mudanças e uma coluna. Se um fluxo de mudanças rastrear uma tabela inteira, as colunas dela não vão aparecer nessa visualização.
Os participantes que têm permissões do IAM no nível do banco de dados e
que receberam acesso ao papel do sistema spanner_info_reader
ou a membros desse papel podem conferir todas as linhas nessa visualização. Todos os outros principais
podem ver apenas linhas de fluxos de alterações em que o privilégio SELECT
é concedido
à função de banco de dados atual, a funções em que a função de banco de dados atual é um
membro ou a public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
change_stream_catalog |
character varying |
O nome do banco de dados. |
change_stream_schema |
character varying |
O nome do esquema do fluxo de alterações. Para bancos de dados de dialeto PostgreSQL, o padrão
é public . |
change_stream_name |
character varying |
O nome do fluxo de alterações. |
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema da tabela. Para bancos de dados de dialeto PostgreSQL, o padrão
é public . |
table_name |
character varying |
O nome da tabela a que esta linha se refere. |
column_name |
character varying |
O nome da coluna a que a linha se refere. |
change_stream_options
Essa visualização filtrada por linha contém as opções de configuração para fluxos de mudanças.
Os participantes que têm permissões do IAM no nível do banco de dados e os participantes que
receberam acesso ao papel do sistema spanner_info_reader
ou aos membros
desse papel podem conferir todas as linhas nessa visualização. Todos os outros principais podem ver apenas
as opções de fluxos de mudanças em que o privilégio SELECT
é concedido à
função de banco de dados atual, às funções de que a função de banco de dados atual é membro
ou a public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
change_stream_catalog |
character varying |
O nome do banco de dados. |
change_stream_schema |
character varying |
O nome do esquema do fluxo de alterações. Para bancos de dados de dialeto PostgreSQL, o padrão
é public . |
change_stream_name |
character varying |
O nome do fluxo de alterações. |
option_name |
character varying |
O nome da opção de fluxo de alterações. |
option_type |
character varying |
O tipo de dados da opção de fluxo de alterações. |
option_value |
character varying |
O valor da opção de mudar o stream. |
change_stream_privileges
Essa visualização filtrada por linha lista todos os privilégios de controle de acesso detalhado concedidos em todos os fluxos de
mudanças para qualquer função de banco de dados, incluindo public
. Os participantes que têm
permissões do IAM no nível do banco de dados e os participantes que receberam
acesso ao papel do sistema spanner_info_reader
ou a membros desse
papel podem conferir todas as linhas nessa visualização. Todos os outros principais só podem ver os privilégios
concedidos em fluxos de mudança para a função de banco de dados atual, para funções das quais a
função de banco de dados atual é membro ou para public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
grantor |
character varying |
Não utilizado. Sempre NULL . |
grantee |
character varying |
O nome do papel do banco de dados a que esse privilégio é concedido. |
change_stream_catalog |
character varying |
O nome do banco de dados. |
change_stream_schema |
character varying |
O nome do esquema que contém o fluxo de mudanças.
O padrão é public para bancos de dados de dialeto PostgreSQL. |
change_stream_name |
character varying |
O nome do fluxo de alterações. |
privilege_type |
character varying |
O tipo de privilégio (somente SELECT ). |
is_grantable |
character varying |
Não utilizado. Sempre NO . |
change_stream_tables
Essa visualização filtrada por linha contém informações sobre tabelas e os fluxos de alterações
que as monitoram. Cada linha descreve uma tabela e um fluxo de mudanças. Os participantes
com permissões do IAM no nível do banco de dados e os participantes que receberam
acesso ao papel do sistema spanner_info_reader
ou a membros desse
papel podem conferir todas as linhas nessa visualização. Todos os outros principais podem ver apenas linhas de
fluxos de mudanças em que o privilégio SELECT
é concedido ao papel do banco de dados
atual, a papéis de que o papel do banco de dados atual é membro ou a
public
.
Os dados em change_stream_tables
não incluem as relações implícitas
entre tabelas e streams de alterações que rastreiam todo o banco de dados.
Nome da coluna | Tipo | Descrição |
---|---|---|
change_stream_catalog |
character varying |
O nome do banco de dados. |
change_stream_schema |
character varying |
O nome do esquema do fluxo de alterações. Para bancos de dados de dialeto PostgreSQL, o padrão
é public . |
change_stream_name |
character varying |
O nome do fluxo de alterações a que esta linha se refere. |
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema da tabela. Para bancos de dados de dialeto PostgreSQL, o padrão
é public . |
table_name |
character varying |
O nome da tabela a que esta linha se refere. |
all_columns |
character varying |
YES se o fluxo de mudança da linha rastreia a totalidade da
tabela a que a linha se refere. Caso contrário, NO . De acordo com o
padrão SQL, a string é YES ou NO ,
em vez de um valor booleano. |
change_streams
Essa visualização filtrada por linha lista todos os fluxos de alterações de um banco de dados e observa quais deles rastreiam o banco de dados inteiro em comparação com tabelas ou colunas específicas. Os participantes
com permissões do IAM no nível do banco de dados e os participantes que receberam
acesso ao papel do sistema spanner_info_reader
ou a membros desse
papel podem conferir todas as linhas nessa visualização. Todos os outros principais só podem acessar streams de
mudança em que o privilégio de controle de acesso detalhado SELECT
é concedido à função de banco de dados
atual, a funções de que a função de banco de dados atual é membro ou a
public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
change_stream_catalog |
character varying |
O nome do banco de dados. |
change_stream_schema |
character varying |
O nome do esquema desse fluxo de mudanças. Para bancos de dados de dialeto PostgreSQL, o padrão
é public . |
change_stream_name |
character varying |
O nome do fluxo de alterações. |
all |
character varying |
YES se esse fluxo de alterações rastreia todo o banco de dados.
NO se o fluxo de alterações rastreia tabelas ou colunas específicas.
De acordo com o padrão SQL, a string é YES
ou NO , em vez de um valor booleano. |
check_constraints
A visualização check_constraints
contém uma linha para cada
restrição de verificação definida pela palavra-chave CHECK
ou NOT NULL
.
Nome da coluna | Tipo | Descrição |
---|---|---|
constraint_catalog |
character varying |
O nome do banco de dados. |
constraint_schema |
character varying |
O nome de esquema da restrição. O padrão é public
para bancos de dados de dialeto PostgreSQL. |
constraint_name |
character varying |
O nome da restrição. Se o nome da restrição não for especificado explicitamente no esquema, o nome gerado automaticamente será usado. |
check_clause |
character varying |
A expressão da restrição de verificação. |
spanner_state |
character varying |
O estado atual da restrição de verificação. Os estados
possíveis são os seguintes:
|
column_column_usage
Essa visualização lista todas as colunas geradas que dependem de outra coluna base na mesma tabela.
Nome da coluna | Tipo | Descrição |
---|---|---|
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela. O nome é public para
o esquema padrão e não vazio para outros esquemas (por exemplo, o
próprio information_schema ). Essa coluna jamais é nula. |
table_name |
character varying |
O nome da tabela que contém as colunas geradas. |
column_name |
character varying |
O nome da coluna base de que a coluna gerada depende. |
dependent_column |
character varying |
O nome da coluna gerada. |
column_options
Essa visualização lista todas as opções definidas para as colunas de tabela referenciadas de uma restrição de chave estrangeira. A visualização contém apenas as colunas na tabela de referência que o usuário atual tem acesso (por ser o proprietário ou ter privilégios concedidos).
Nome da coluna | Tipo | Descrição |
---|---|---|
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela externa. O nome é
public para o esquema padrão e não vazio para outros esquemas (por
exemplo, o próprio information_schema ). Essa coluna nunca é
nula. |
table_name |
character varying |
O nome da tabela externa. |
column_name |
character varying |
O nome da coluna. |
option_name |
character varying |
Um identificador SQL que identifica com exclusividade a opção. Esse identificador é a chave da cláusula OPTIONS em DDL.
|
option_value |
character varying |
Um literal SQL que descreve o valor dessa opção. O valor dessa coluna pode ser analisado como parte de uma consulta. |
option_type |
character varying |
Um nome do tipo de dados que é o tipo desse valor de opção. |
column_privileges
Essa visualização filtrada por linha lista todos os privilégios de controle de acesso granular concedidos em todas as colunas para qualquer função de banco de dados, incluindo public
. Os participantes que têm permissões no nível do banco de dados do IAM e os participantes que receberam acesso à função do sistema spanner_info_reader
ou a membros dessa função podem conferir todas as linhas nessa visualização. Todos os outros principais podem ver apenas os privilégios concedidos em colunas para
o papel do banco de dados atual, para papéis em que o papel do banco de dados atual é um
membro ou para public
.
A visualização inclui os privilégios SELECT
, INSERT
e UPDATE
que a coluna herda da tabela ou visualização que contém a coluna.
Nome da coluna | Tipo | Descrição |
---|---|---|
grantor |
character varying |
Não utilizado. Sempre NULL . |
grantee |
character varying |
O nome do papel do banco de dados a que esse privilégio é concedido. |
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela ou visualização. O
padrão é public para bancos de dados de dialeto PostgreSQL. |
table_name |
character varying |
O nome da tabela ou visualização que contém a coluna. |
column_name |
character varying |
O nome da coluna. |
privilege_type |
character varying |
O tipo de privilégio (SELECT ,
INSERT ou UPDATE ). |
is_grantable |
character varying |
Não utilizado. Sempre NO . |
columns
Essa visualização filtrada por linha fornece informações sobre todas as colunas de tabela e de visualização no banco de dados. Os participantes que têm permissões do IAM no nível do banco de dados e os participantes que receberam acesso ao papel do sistema spanner_info_reader
ou a membros desse papel podem conferir todas as linhas nessa visualização. Todos os outros participantes podem acessar apenas as colunas que têm privilégios de controle de acesso detalhado concedidos a elas (ou os privilégios SELECT
, INSERT
ou UPDATE
concedidos às tabelas que contêm) para o papel do banco de dados atual, para papéis de que o papel do banco de dados atual é membro ou para public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela. O nome é
public para o esquema padrão e não vazio para outros esquemas (por
exemplo, o próprio information_schema ). Essa coluna nunca é
nula. |
table_name |
character varying |
O nome da tabela |
column_name |
character varying |
O nome da coluna |
ordinal_position |
BIGINT |
A posição ordinal da coluna na tabela, começando com um valor de 1 |
column_default |
character varying |
Uma representação de string da expressão PostgreSQL de código aberto
do valor padrão da coluna, por exemplo, '9'::bigint .
|
is_nullable |
character varying |
Uma string que indica se a coluna é anulável. De acordo
com o padrão SQL, a string é YES ou
NO , em vez de um valor booleano. |
data_type |
character varying |
O tipo de dados da coluna. O valor é um destes:
|
character_maximum_length |
BIGINT |
O comprimento máximo declarado para tipos de dados de caracteres e strings de bits. Se
um comprimento máximo não tiver sido especificado, o valor será NULL . Se o tipo de dados da coluna não for um caractere ou uma string de bits, o valor será NULL . |
character_octet_length |
BIGINT |
Não utilizado. O valor é sempre NULL . |
numeric_precision |
BIGINT |
A precisão do tipo de dados numérico da coluna atual.
Para double precision , o valor é 53. Para bigint , o valor é 64.
Para todos os outros tipos de dados, o valor é NULL . |
numeric_precision_radix |
BIGINT |
A base (unidade) da precisão para tipos numéricos. Apenas
dois valores são aceitos:
NULL . |
numeric_scale |
BIGINT |
Contém a escala do tipo de coluna numérica, que é o número de
unidades de base de precisão após o ponto radix. Para bigint , o
valor é 0.
Para todos os outros tipos de dados, o valor é NULL . |
datetime_precision |
BIGINT |
Não utilizado. O valor é sempre NULL . |
interval_type |
character varying |
Não utilizado. O valor é sempre NULL . |
interval_precision |
BIGINT |
Não utilizado. O valor é sempre NULL . |
character_set_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
character_set_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
character_set_name |
character varying |
Não utilizado. O valor é sempre NULL . |
collation_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
collation_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
collation_name |
character varying |
Não utilizado. O valor é sempre NULL . |
domain_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
domain_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
domain_name |
character varying |
Não utilizado. O valor é sempre NULL . |
udt_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
udt_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
udt_name |
character varying |
Não utilizado. O valor é sempre NULL . |
scope_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
scope_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
scope_name |
character varying |
Não utilizado. O valor é sempre NULL . |
maximum_cardinality |
BIGINT |
Não utilizado. O valor é sempre NULL . |
dtd_identifier |
character varying |
Não utilizado. O valor é sempre NULL . |
is_self_referencing |
character varying |
Não utilizado. O valor é sempre NULL . |
is_identity |
character varying |
Não utilizado. O valor é sempre NULL . |
identity_generation |
character varying |
Não utilizado. O valor é sempre NULL . |
identity_start |
character varying |
Não utilizado. O valor é sempre NULL . |
identity_increment |
character varying |
Não utilizado. O valor é sempre NULL . |
identity_maximum |
character varying |
Não utilizado. O valor é sempre NULL . |
identity_minimum |
character varying |
Não utilizado. O valor é sempre NULL . |
identity_cycle |
character varying |
Não utilizado. O valor é sempre NULL . |
is_generated |
character varying |
Uma string que indica se a coluna foi gerada. A string é
ALWAYS para uma coluna gerada ou NEVER
para uma coluna não gerada. |
generation_expression |
character varying |
Uma string que representa a expressão SQL de uma coluna gerada ou
NULL se a coluna não for gerada. |
is_updatable |
character varying |
Não utilizado. O valor é sempre NULL . |
spanner_type |
character varying |
Uma string que contém o tipo compatível com DDL da coluna. |
is_stored |
character varying |
Uma string que indica se a coluna gerada está armazenada.
A string é sempre YES ou NO para colunas
geradas e NULL para colunas não geradas. |
spanner_state |
character varying |
O estado atual da coluna. Uma nova coluna gerada armazenada adicionada a
uma tabela existente pode passar por vários estados observáveis pelo usuário
antes de ser totalmente utilizável. Os valores possíveis são:
|
constraint_column_usage
Essa visualização contém uma linha sobre cada coluna usada por uma restrição.
- Para restrições
PRIMARY KEY
eCHECK
definidas pela palavra-chaveNOT NULL
, a visualização contém essas colunas. - Para restrições
CHECK
criadas com a palavra-chaveCHECK
, a visualização inclui as colunas usadas pela expressão de restrição de verificação. - Para restrições de chave externa, a visualização contém as colunas da tabela referenciada.
- Para restrições
UNIQUE
, a visualização contém as colunas deKEY_COLUMN_USAGE
.
Nome da coluna | Tipo | Descrição |
---|---|---|
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela que contém a coluna usada pela restrição. |
table_name |
character varying |
O nome da tabela que contém a coluna usada pela restrição. |
column_name |
character varying |
O nome da coluna que é usada pela restrição. |
constraint_catalog |
character varying |
O nome do banco de dados. |
constraint_schema |
character varying |
O nome de esquema da restrição. |
constraint_name |
character varying |
O nome da restrição. |
constraint_table_usage
Essa visualização contém uma linha para cada tabela usada por uma restrição. Para restrições FOREIGN
KEY
, as informações da tabela são para as tabelas na cláusula
REFERENCES
. Para uma restrição de chave exclusiva ou primária, essa visualização identifica a
tabela à qual a restrição pertence. As restrições de verificação e não nulas não são
incluídas nesta visualização.
Nome da coluna | Tipo | Descrição |
---|---|---|
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome de esquema da tabela restrita. |
table_name |
character varying |
O nome da tabela usada por alguma restrição. |
constraint_catalog |
character varying |
O nome do banco de dados. |
constraint_schema |
character varying |
O nome do esquema que contém a restrição. |
constraint_name |
character varying |
O nome da restrição. |
database_options
Esta tabela lista as opções definidas no banco de dados.
Nome da coluna | Tipo | Descrição |
---|---|---|
catalog_name |
character varying |
O nome do banco de dados. |
schema_name |
character varying |
O nome do esquema. O valor padrão é public para
bancos de dados de dialeto PostgreSQL. |
option_name |
character varying |
O nome da opção de banco de dados. Esse é o valor de key
na cláusula OPTIONS no DDL. |
option_type |
character varying |
O tipo de dados da opção de banco de dados. |
option_value |
character varying |
O valor da opção de banco de dados. |
enabled_roles
Essa visualização filtrada lista as funções de banco de dados definidas. Os principais que têm
permissões do IAM no nível do banco de dados e os principais que receberam
acesso ao papel do sistema spanner_info_reader
ou a membros desse papel podem conferir todos os papéis do banco de dados. Todos os outros principais podem acessar apenas
as funções de banco de dados a que foram concedidos acesso diretamente ou por
herança. Todas as funções do sistema, exceto public
, também aparecem nessa visualização.
Nome da coluna | Tipo | Descrição |
---|---|---|
role_name |
character varying |
O nome do papel. |
spanner_is_system |
character varying |
YES , se a função for do sistema. Caso contrário,
NO . |
index_columns
Essa visualização lista as colunas em um índice.
Nome da coluna | Tipo | Descrição |
---|---|---|
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém o índice. O valor padrão é
public . |
table_name |
character varying |
O nome da tabela associada ao índice. |
index_name |
character varying |
O nome do índice. As tabelas com uma especificação PRIMARY KEY
têm uma entrada de pseudo-índice gerada com o nome
PRIMARY_KEY . |
index_type |
character varying |
O tipo de índice. Os valores possíveis são PRIMARY_KEY ,
LOCAL ou GLOBAL . |
column_name |
character varying |
O nome da coluna. |
ordinal_position |
BIGINT |
A posição ordinal da coluna no índice (ou chave primária), começando com um valor de 1. Esse valor é NULL para colunas sem chave (por exemplo, colunas especificadas na cláusula INCLUDE de um índice). |
column_ordering |
character varying |
A ordem de classificação da coluna. O valor é ASC ou
DESC para colunas de chave e NULL para colunas
sem chave (por exemplo, colunas especificadas na cláusula
STORING de um índice). |
is_nullable |
character varying |
Uma string que indica se a coluna é anulável. De acordo
com o padrão SQL, a string é YES ou
NO , em vez de um valor booleano. |
spanner_type |
character varying |
Uma string que contém o tipo compatível com DDL da coluna. |
indexes
Essa visualização lista os índices em um esquema.
Nome da coluna | Tipo | Descrição |
---|---|---|
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema. O valor padrão é public . |
table_name |
character varying |
O nome da tabela. |
index_name |
character varying |
O nome do índice. As tabelas criadas com uma cláusula PRIMARY KEY
têm uma entrada de pseudo-índice gerada com o nome PRIMARY_KEY ,
o que permite que os campos da chave primária sejam identificados. |
index_type |
character varying |
O tipo do índice. Os valores incluem PRIMARY_KEY ,
LOCAL ou GLOBAL . |
parent_table_name |
character varying |
Os índices secundários podem ser intercalados em uma tabela pai, conforme discutido em Como criar um índice secundário. Essa coluna contém o nome dessa tabela pai ou uma string vazia se o índice não for intercalado. |
is_unique |
character varying |
Se as chaves do índice precisarem ser exclusivas. De acordo com o padrão SQL, a string é YES ou NO , em vez de um valor booleano. |
is_null_filtered |
character varying |
Se o índice incluir entradas com valores NULL . De acordo
com o padrão SQL, a string é YES ou
NO , em vez de um valor booleano. |
index_state |
character varying |
O estado atual do índice. Os valores possíveis e os estados que eles
representam são:
|
spanner_is_managed |
character varying |
Indica se o índice é gerenciado pelo Spanner. Por exemplo, os índices de backup secundários de chaves externas são gerenciados pelo Spanner. A string é YES ou NO , em vez de um valor booleano, de acordo com o padrão SQL. |
information_schema_catalog_name
Essa tabela contém uma linha e uma coluna com o nome do banco de dados.
Nome da coluna | Tipo | Descrição |
---|---|---|
catalog_name |
character varying |
O nome do banco de dados. |
key_column_usage
Essa visualização identifica todas as colunas no banco de dados atual que são referenciadas por
uma restrição de chave primária ou externa exclusiva. Para informações sobre as colunas de restrição CHECK
, consulte a visualização check_constraints
.
Nome da coluna | Tipo | Descrição |
---|---|---|
constraint_catalog |
character varying |
O nome do banco de dados. |
constraint_schema |
character varying |
O nome de esquema da restrição. O valor padrão é public . |
constraint_name |
character varying |
O nome da restrição. |
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela que contém a coluna restrita. O valor padrão é public . |
table_name |
character varying |
O nome da tabela que contém a coluna restrita por essa restrição. |
column_name |
character varying |
O nome da coluna restrita. |
ordinal_position |
BIGINT |
A posição ordinal da coluna na chave da restrição, começando
com um valor de 1 . |
position_in_unique_constraint |
BIGINT |
Para FOREIGN KEY s, a posição ordinal da coluna na
restrição exclusiva, começando com um valor de 1 . Essa coluna tem um valor NULL para outros tipos de restrição. |
parameters
Essa visualização filtrada por linha define os argumentos para cada função de leitura do fluxo de mudanças. Cada linha descreve um argumento para uma função de leitura de fluxo de mudanças.
Os participantes que têm permissões do IAM no nível do banco de dados e os participantes que
receberam acesso ao papel do sistema spanner_info_reader
ou aos membros
desse papel podem conferir todas as linhas nessa visualização. Todos os outros principais só podem acessar
parâmetros para funções de leitura de fluxo de alterações em que o privilégio de controle de acesso detalhado
EXECUTE
é concedido à função de banco de dados atual, a funções em que a função de banco de dados atual
é membro ou a public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
specific_catalog |
character varying |
O nome do banco de dados. |
specific_schema |
character varying |
O nome do esquema da rotina. Para bancos de dados de dialeto PostgreSQL, o padrão
é public . |
specific_name |
character varying |
O nome da rotina. Identifica exclusivamente a rotina, mesmo que seu nome seja sobrecarregado. |
ordinal_position |
bigint |
A posição ordinal do parâmetro na lista de argumentos da rotina, começando com um valor 1. |
parameter_mode |
character varying |
Não utilizado. Sempre NULL . |
is_result |
character varying |
Não utilizado. Sempre NULL . |
as_locator |
character varying |
Não utilizado. Sempre NULL . |
parameter_name |
character varying |
O nome do parâmetro. |
data_type |
character varying |
O tipo de dados do parâmetro. O valor é um dos
seguintes:
|
character_maximum_length |
bigint |
Não utilizado. Sempre NULL . |
character_octet_length |
bigint |
Não utilizado. O valor é sempre NULL . |
character_set_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
character_set_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
character_set_name |
character varying |
Não utilizado. O valor é sempre NULL . |
collation_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
collation_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
collation_name |
character varying |
Não utilizado. O valor é sempre NULL . |
numeric_precision |
bigint |
Não utilizado. O valor é sempre NULL . |
numeric_precision_radix |
bigint |
Não utilizado. O valor é sempre NULL . |
numeric_scale |
bigint |
Não utilizado. O valor é sempre NULL . |
datetime_precision |
bigint |
Não utilizado. O valor é sempre NULL . |
interval_type |
character varying |
Não utilizado. O valor é sempre NULL . |
interval_precision |
bigint |
Não utilizado. O valor é sempre NULL . |
udt_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
udt_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
udt_name |
character varying |
Não utilizado. O valor é sempre NULL . |
scope_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
scope_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
scope_name |
character varying |
Não utilizado. O valor é sempre NULL . |
maximum_cardinality |
bigint |
Não utilizado. O valor é sempre NULL . |
dtd_identifier |
character varying |
Não utilizado. O valor é sempre NULL . |
parameter_default |
character varying |
Não utilizado. O valor é sempre NULL . |
placements
Esta tabela lista as posições no banco de dados.
Nome da coluna | Tipo | Descrição |
---|---|---|
placement_name |
character varying |
O nome da posição. |
is_default |
character varying |
Uma string que indica se a coluna é anulável. De acordo
com o padrão SQL, a string é YES ou
NO , em vez de um valor booleano. |
placement-options
Para cada posição, a tabela lista as opções definidas na posição
na cláusula OPTIONS
da instrução CREATE PLACEMENT
.
Nome da coluna | Tipo | Descrição |
---|---|---|
placement_name |
character varying |
O nome da posição. |
option_name |
character varying |
O nome da opção de posicionamento. Os valores válidos para
option_name incluem:
|
option_type |
character varying |
O tipo de dados da opção de posicionamento. |
option_value |
character varying |
O valor da opção de posição. Para instance_partition ,
esse é o nome da partição da instância. Para default_leader ,
é o nome da região líder padrão. |
referential_constraints
Essa visualização contém uma linha sobre cada restrição FOREIGN KEY
. Você só pode ver
as restrições para as quais tem acesso de gravação à tabela de referência. Essa
visualização também identifica as restrições PRIMARY KEY
e UNIQUE
nas
tabelas referenciadas que as chaves externas usam para aplicação de restrições e
ações de referência.
Nome da coluna | Tipo | Descrição |
---|---|---|
constraint_catalog |
character varying |
O nome do banco de dados. |
constraint_schema |
character varying |
O nome do esquema que contém a restrição de chave externa. O
valor padrão é public . |
constraint_name |
character varying |
O nome da restrição de chave estrangeira. |
unique_constraint_catalog |
character varying |
O nome do banco de dados. |
unique_constraint_schema |
character varying |
O nome do esquema que contém a restrição de chave primária ou exclusiva que a restrição de chave externa faz referência. |
unique_constraint_name |
character varying |
O nome da restrição de chave primária ou exclusiva que a restrição de chave externa faz referência. |
match_option |
character varying |
O método de correspondência usado pela restrição de chave externa. O valor é sempre
NONE .
|
update_rule |
character varying |
A regra de atualização da restrição de chave externa. Esse valor é sempre
NO ACTION .
|
delete_rule |
character varying |
A regra de exclusão da restrição de chave externa. Esse valor é
CASCADE ou NO ACTION . |
spanner_state |
character varying |
O estado atual da chave externa. O Spanner não começa
a aplicar a restrição até que os índices de backup da chave externa sejam
criados e preenchidos. Quando os índices estiverem prontos, o Spanner
vai começar a aplicar a restrição para novas transações enquanto valida os
dados existentes. Os valores possíveis e os estados que eles representam são:
|
role_change_stream_grants
Essa visualização filtrada por linha lista os privilégios SELECT
concedidos em todos os fluxos
de mudanças para qualquer função do banco de dados, incluindo public
. Os participantes que têm
permissões do IAM no nível do banco de dados e os participantes que receberam
acesso ao papel do sistema spanner_info_reader
ou a membros desse
papel podem conferir todas as linhas nessa visualização. Todos os outros principais podem ver apenas os privilégios
concedidos nos fluxos de alterações para a função de banco de dados atual e para as funções das quais a
função de banco de dados atual é membro, exceto public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
grantor |
character varying |
Não utilizado. Sempre NULL . |
grantee |
character varying |
O nome do papel do banco de dados a que esse privilégio é concedido. |
change_stream_catalog |
character varying |
O nome do banco de dados. |
change_stream_schema |
character varying |
O nome do esquema que contém o fluxo de mudanças.
O padrão é public para bancos de dados de dialeto PostgreSQL. |
change_stream_name |
character varying |
O nome do fluxo de alterações. |
privilege_type |
character varying |
O tipo de privilégio (somente SELECT ). |
is_grantable |
character varying |
Não utilizado. Sempre NO . |
role_column_grants
Essa visualização filtrada por linha lista todos os privilégios de controle de acesso granular concedidos em todas as colunas para qualquer função de banco de dados, incluindo public
. Os participantes que têm permissões do IAM no nível do banco de dados e os participantes que receberam acesso à função do sistema spanner_info_reader
ou a membros dessa função podem conferir todas as linhas nessa visualização. Todos os outros principais só podem ver os privilégios concedidos em colunas para
o papel de banco de dados atual e para papéis em que o papel de banco de dados atual é um
membro, exceto public
.
A visualização inclui os privilégios SELECT
, INSERT
e UPDATE
que a coluna herda da tabela ou visualização que contém a coluna.
Nome da coluna | Tipo | Descrição |
---|---|---|
grantor |
character varying |
Não utilizado. Sempre NULL . |
grantee |
character varying |
O nome do papel do banco de dados a que esse privilégio é concedido. |
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela ou visualização. O
padrão é public para bancos de dados de dialeto PostgreSQL. |
table_name |
character varying |
O nome da tabela ou visualização que contém a coluna. |
column_name |
character varying |
O nome da coluna. |
privilege_type |
character varying |
O tipo de privilégio (SELECT ,
INSERT ou UPDATE ). |
is_grantable |
character varying |
Não utilizado. Sempre NO . |
role_routine_grants
Essa visualização filtrada por linha lista os privilégios EXECUTE
concedidos em todas as funções de leitura do fluxo de alterações para qualquer função de banco de dados, incluindo public
. Os participantes que têm
permissões do IAM no nível do banco de dados e os participantes que receberam acesso ao
papel do sistema spanner_info_reader
ou a membros desse papel podem acessar todas as linhas nessa visualização. Todos os outros principais podem ver apenas os privilégios concedidos nas funções de leitura
do fluxo de alterações para a função de banco de dados atual e para as funções das quais a função de banco de dados
atual é membro, exceto public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
grantor
|
character varying
|
Não utilizado. Sempre NULL . |
grantee
|
character varying
|
O nome do papel a que o privilégio foi concedido. |
specific_catalog
|
character varying
|
O nome do banco de dados. |
specific_schema
|
character varying
|
O nome do esquema da rotina. Para bancos de dados de dialeto PostgreSQL, o padrão
é public . |
specific_name
|
character varying
|
O nome da rotina. Identifica exclusivamente a rotina, mesmo que seu nome seja sobrecarregado. |
routine_catalog
|
character varying
|
O nome do banco de dados. |
routine_schema
|
character varying
|
O nome do esquema da rotina. O padrão é public para bancos de dados de dialeto PostgreSQL. |
routine_name
|
character varying
|
O nome da rotina. Pode ser duplicado em caso de sobrecarga. |
privilege_type
|
character varying
|
O tipo de privilégio concedido. Sempre EXECUTE . |
is_grantable
|
character varying
|
Não utilizado. Sempre NO . |
role_table_grants
Essa visualização filtrada por linha lista todos os privilégios de controle de acesso detalhado concedidos em todas as tabelas e visualizações para qualquer função de banco de dados, incluindo public
. Os participantes que têm
permissões do IAM no nível do banco de dados e os participantes que receberam
acesso ao papel do sistema spanner_info_reader
ou a membros desse
papel podem conferir todas as linhas nessa visualização. Todos os outros principais só podem ver os privilégios
concedidos em tabelas e visualizações para o papel de banco de dados atual e para papéis de que
o papel de banco de dados atual é membro, exceto public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
grantor |
character varying |
Não utilizado. Sempre NULL . |
grantee |
character varying |
O nome do papel do banco de dados a que esse privilégio é concedido. |
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela ou visualização. O padrão é public para bancos de dados de dialeto PostgreSQL. |
table_name |
character varying |
O nome da tabela ou visualização. |
privilege_type |
character varying |
O tipo de privilégio (SELECT , INSERT ,
UPDATE ou DELETE ). |
is_grantable |
character varying |
Não utilizado. Sempre NO . |
with_hierarchy |
character varying |
Não utilizado. Sempre NULL . |
routine_options
Essa visualização filtrada contém uma linha para cada opção de cada função de leitura de fluxo de mudanças definida.
Os participantes que têm permissões do IAM no nível do banco de dados e os participantes que
receberam acesso ao papel do sistema spanner_info_reader
ou aos membros
desse papel podem conferir todas as linhas nessa visualização. Todos os outros principais podem ver apenas
opções para funções de leitura de fluxo de alterações em que o privilégio de controle de acesso detalhado
EXECUTE
é concedido à função de banco de dados atual, a funções de que a função de banco de dados atual
é membro ou a public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
specific_catalog
|
character varying
|
O nome do banco de dados. |
specific_schema
|
character varying
|
O nome do esquema da rotina. O padrão é public para bancos de dados de dialeto PostgreSQL. |
specific_name
|
character varying
|
O nome da rotina. Identifica exclusivamente a rotina, mesmo que seu nome seja sobrecarregado. |
option_name
|
character varying
|
O nome da opção. |
option_type
|
character varying
|
O tipo de dados da opção. O valor é um dos seguintes:
|
option_value
|
character varying
|
O valor da opção. |
routine_privileges
Essa visualização filtrada por linha lista todos os privilégios de controle de acesso detalhado concedidos em todas as funções de leitura
do fluxo de alterações para qualquer função de banco de dados, incluindo public
. Os participantes que
têm permissões do IAM no nível do banco de dados e os participantes que receberam
acesso ao papel do sistema spanner_info_reader
ou a membros desse
papel podem conferir todas as linhas nessa visualização. Todos os outros principais só podem acessar os privilégios
concedidos em funções de leitura de fluxo de alterações para a função de banco de dados atual, para funções
das quais a função de banco de dados atual é membro ou para public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
grantor
|
character varying
|
Não utilizado. Sempre NULL . |
grantee
|
character varying
|
O nome do papel a que o privilégio foi concedido. |
specific_catalog
|
character varying
|
O nome do banco de dados. |
specific_schema
|
character varying
|
O nome do esquema da rotina. Para bancos de dados de dialeto PostgreSQL, o padrão
é public . |
specific_name
|
character varying
|
O nome da rotina. Identifica exclusivamente a rotina, mesmo que seu nome seja sobrecarregado. |
routine_catalog
|
character varying
|
O nome do banco de dados. |
routine_schema
|
character varying
|
O nome do esquema da rotina. O padrão é
public . |
routine_name
|
character varying
|
O nome da rotina. (Pode ser duplicado se estiver sobrecarregado.) |
privilege_type
|
character varying
|
O tipo de privilégio concedido. |
is_grantable
|
character varying
|
Não utilizado. Sempre NO . |
routines
Essa visualização filtrada por linha lista todas as funções de leitura do fluxo de alterações de um banco de dados.
Os participantes que têm permissões do IAM no nível do banco de dados e os participantes que
receberam acesso ao papel do sistema spanner_info_reader
ou aos membros
desse papel podem conferir todas as linhas nessa visualização. Todos os outros participantes podem ver apenas
funções de leitura de fluxo de alterações em que o privilégio de controle de acesso detalhado EXECUTE
é
concedido à função de banco de dados atual, a funções em que a função de banco de dados
atual é membro ou a public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
specific_catalog |
character varying |
O nome do banco de dados. |
specific_schema |
character varying |
O nome do esquema da rotina. O padrão é public para bancos de dados de dialeto PostgreSQL. |
specific_name |
character varying |
O nome da rotina. Identifica exclusivamente a rotina, mesmo que seu nome seja sobrecarregado. |
routine_catalog |
character varying |
O nome do banco de dados. |
routine_schema |
character varying |
O nome do esquema da rotina. |
routine_name |
character varying |
O nome da rotina. Pode ser duplicado em caso de sobrecarga. |
routine_type |
character varying |
O tipo da rotina (FUNCTION ou
PROCEDURE ). Sempre FUNCTION |
module_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
module_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
module_name |
character varying |
Não utilizado. O valor é sempre NULL . |
udt_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
udt_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
udt_name |
character varying |
Não utilizado. O valor é sempre NULL . |
data_type |
character varying |
O tipo de retorno da rotina. O valor é um dos
seguintes:
|
character_maximum_length |
bigint |
Não utilizado. O valor é sempre NULL . |
character_octet_length |
bigint |
Não utilizado. O valor é sempre NULL . |
character_set_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
character_set_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
character_set_name |
character varying |
Não utilizado. O valor é sempre NULL . |
collation_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
collation_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
collation_name |
character varying |
Não utilizado. O valor é sempre NULL . |
numeric_precision |
bigint |
Não utilizado. O valor é sempre NULL . |
numeric_precision_radix |
bigint |
Não utilizado. O valor é sempre NULL . |
numeric_scale |
bigint |
Não utilizado. O valor é sempre NULL . |
datetime_precision |
bigint |
Não utilizado. O valor é sempre NULL . |
interval_type |
character varying |
Não utilizado. O valor é sempre NULL . |
interval_precision |
bigint |
Não utilizado. O valor é sempre NULL . |
type_udt_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
type_udt_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
type_udt_name |
character varying |
Não utilizado. O valor é sempre NULL . |
scope_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
scope_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
scope_name |
character varying |
Não utilizado. O valor é sempre NULL . |
maximum_cardinality |
bigint |
Não utilizado. O valor é sempre NULL . |
dtd_identifier |
character varying |
Não utilizado. O valor é sempre NULL . |
routine_body |
character varying |
O tipo do corpo da rotina (SQL ou
EXTERNAL ). |
routine_definition |
character varying |
A definição do SQL routine_body , vazia
de outra forma. |
external_name |
character varying |
Não utilizado. O valor é sempre NULL . |
external_language |
character varying |
Não utilizado. O valor é sempre NULL . |
parameter_style |
character varying |
Não utilizado. O valor é sempre NULL . |
is_deterministic |
character varying |
Não utilizado. O valor é sempre NULL . |
sql_data_access |
character varying |
Não utilizado. O valor é sempre NULL . |
is_null_call |
character varying |
Não utilizado. O valor é sempre NULL . |
sql_path |
character varying |
Não utilizado. O valor é sempre NULL . |
schema_level_routine |
character varying |
Não utilizado. O valor é sempre NULL . |
max_dynamic_result_sets |
character varying |
Não utilizado. O valor é sempre NULL . |
is_user_defined_cast |
character varying |
Não utilizado. O valor é sempre NULL . |
is_implicitly_invocable |
character varying |
Não utilizado. O valor é sempre NULL . |
security_type |
character varying |
O tipo de segurança da rotina. Somente INVOKER é
aceito. |
to_sql_specific_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
to_sql_specific_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
to_sql_specific_name |
character varying |
Não utilizado. O valor é sempre NULL . |
as_locator |
character varying |
Não utilizado. O valor é sempre NULL . |
created |
timestamp with time zone |
Não utilizado. O valor é sempre NULL . |
last_altered |
timestamp with time zone |
Não utilizado. O valor é sempre NULL . |
new_savepoint_level |
character varying |
Não utilizado. O valor é sempre NULL . |
is_udt_dependent |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_from_data_type |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_as_locator |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_char_max_length |
bigint |
Não utilizado. O valor é sempre NULL . |
result_cast_char_octet_length |
bigint |
Não utilizado. O valor é sempre NULL . |
result_cast_char_set_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_char_set_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_char_set_name |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_collation_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_collation_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_collation_name |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_numeric_precision |
bigint |
Não utilizado. O valor é sempre NULL . |
result_cast_numeric_precision_radix |
bigint |
Não utilizado. O valor é sempre NULL . |
result_cast_numeric_scale |
bigint |
Não utilizado. O valor é sempre NULL . |
result_cast_datetime_precision |
bigint |
Não utilizado. O valor é sempre NULL . |
result_cast_interval_type |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_interval_precision |
bigint |
Não utilizado. O valor é sempre NULL . |
result_cast_type_udt_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_type_udt_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_type_udt_name |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_scope_catalog |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_scope_schema |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_scope_name |
character varying |
Não utilizado. O valor é sempre NULL . |
result_cast_maximum_cardinality |
bigint |
Não utilizado. O valor é sempre NULL . |
result_cast_dtd_identifier |
character varying |
Não utilizado. O valor é sempre NULL . |
schemata
A visualização information_schema.schemata
contém uma linha para cada esquema no
banco de dados atual. Os esquemas incluem o esquema de informações e um esquema padrão
chamado public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
catalog_name |
character varying |
O nome do banco de dados. |
schema_name |
character varying |
O nome do esquema. Ele é definido como public para o esquema padrão
e não vazio para esquemas nomeados. |
schema_owner |
character varying |
O nome do proprietário do esquema. |
default_character_set_catalog |
character varying |
Não utilizado. |
default_character_set_schema |
character varying |
Não utilizado. |
default_character_set_name |
character varying |
Não utilizado. |
sql_path |
character varying |
Não utilizado. |
effective_timestamp |
timestamp with timezone |
O carimbo de data/hora em que todos os dados deste esquema entraram em vigor. Isso é usado apenas para o esquema padrão. |
sequences
A visualização information_schema.sequences
contém os metadados sequences
.
Nome da coluna | Tipo | Descrição |
---|---|---|
sequence_catalog |
character varying |
O nome do banco de dados. |
sequence_schema |
character varying |
O nome do esquema da sequência. O padrão é public
para um banco de dados de dialeto PostgreSQL. |
sequence_name |
character varying |
O nome da sequência. |
data_type |
character varying |
A sequência só é compatível com int8 . |
numeric_precision |
bigint |
Não utilizado. O valor é sempre "NULL". |
numeric_precision_radix |
bigint |
Não utilizado. O valor é sempre "NULL". |
numeric_scale |
bigint |
Não utilizado. O valor é sempre "NULL". |
start_value |
bigint |
Não utilizado. O valor é sempre "NULL". |
minimum_value |
bigint |
Não utilizado. O valor é sempre "NULL". |
maximum_value |
bigint |
Não utilizado. O valor é sempre "NULL". |
increment |
bigint |
Não utilizado. O valor é sempre "NULL". |
cycle_option |
character varying |
A única opção aceita por sequence é no . |
sequence_kind |
character varying |
O tipo de sequência. bit_reversed_positive é o único
valor aceitável. |
counter_start_value |
bigint |
Valor inicial do contador de sequência. |
skip_range_min |
bigint |
O valor mínimo no intervalo ignorado. Esse valor será NULL
se não estiver definido. |
skip_range_max |
bigint |
O valor máximo no intervalo ignorado. Esse valor será NULL
se não estiver definido. |
spanner_statistics
Esta tabela lista os pacotes de estatísticas do otimizador de consultas disponíveis.
Nome da coluna | Tipo | Descrição |
---|---|---|
catalog_name |
character varying |
O nome do banco de dados. |
schema_name |
character varying |
O nome do esquema. O valor padrão do esquema é public . |
package_name |
character varying |
Nome do pacote de estatísticas. |
allow_gc |
character varying |
Indica se o pacote de estatísticas está isento da coleta de lixo. De acordo
com o padrão SQL, a string é YES ou
NO , em vez de um valor booleano. Esse atributo precisa ser definido
como NO antes de você fazer referência ao pacote de estatísticas em uma
sugestão ou pela API do cliente.
|
table_constraints
Essa visualização contém todas as restrições pertencentes a tabelas a que o usuário atual tem
acesso (exceto SELECT
).
Nome da coluna | Tipo | Descrição |
---|---|---|
constraint_catalog |
character varying |
O nome do banco de dados. |
constraint_schema |
character varying |
O nome do esquema que contém a restrição. |
constraint_name |
character varying |
O nome da restrição. |
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela associada à restrição. |
table_name |
character varying |
O nome da tabela. |
constraint_type |
character varying |
O tipo da restrição. Os valores possíveis são:
|
is_deferrable |
character varying |
O valor é sempre NO . |
initially_deferred |
character varying |
O valor é sempre NO . |
enforced |
character varying |
Se a restrição é aplicada. Se uma restrição for aplicada (depois
que atingir um determinado estado), ela será validada no momento da gravação e por um
verificador de integridade em segundo plano. De acordo com o padrão SQL, a string é YES ou NO , em vez de um valor booleano. |
table_privileges
Essa visualização filtrada por linha lista todos os privilégios de controle de acesso detalhado concedidos em todas as tabelas e visualizações para qualquer função de banco de dados, incluindo public
. Os participantes que têm
permissões do IAM no nível do banco de dados e os participantes que receberam
acesso ao papel do sistema spanner_info_reader
ou a membros desse
papel podem conferir todas as linhas nessa visualização. Todos os outros principais podem conferir apenas os privilégios
concedidos em tabelas e visualizações para o papel do banco de dados atual, para papéis de que o
papel do banco de dados atual é membro ou para public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
grantor |
character varying |
Não utilizado. Sempre NULL . |
grantee |
character varying |
O nome do papel do banco de dados a que esse privilégio é concedido. |
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela ou visualização.
O padrão é public para bancos de dados de dialeto PostgreSQL. |
table_name |
character varying |
O nome da tabela ou visualização. |
privilege_type |
character varying |
O tipo de privilégio (SELECT , INSERT ,
UPDATE ou DELETE ). |
is_grantable |
character varying |
Não utilizado. Sempre NO . |
that have_hierarchy |
character varying |
Não utilizado. Sempre NULL . |
tables
Essa visualização filtrada por linha lista todas as tabelas e visualizações que estão no banco de dados atual.
Os participantes que têm permissões do IAM no nível do banco de dados e os participantes que
receberam acesso ao papel do sistema spanner_info_reader
ou a membros
desse papel podem acessar todas as tabelas e visualizações. Todos os outros participantes principais só podem acessar tabelas
que atendam a um dos seguintes requisitos:
-
Os privilégios de controle de acesso detalhado
SELECT
,INSERT
,UPDATE
ouDELETE
são concedidos na tabela para o papel do banco de dados atual, para papéis em que o papel do banco de dados atual é membro ou parapublic
. - Os privilégios
SELECT
,INSERT
ouUPDATE
são concedidos em qualquer coluna de tabela para o papel do banco de dados atual, para papéis de que o papel do banco de dados atual é membro ou parapublic
.
Nome da coluna | Tipo | Descrição |
---|---|---|
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema que contém a tabela ou visualização. |
table_name |
character varying |
O nome da tabela, visualização ou sinônimo. |
table_type |
character varying |
O tipo de tabela. Os valores possíveis incluem "BASE TABLE", "VIEW" ou "SYNONYM". |
self_referencing_column_name |
character varying |
Não utilizado. |
reference_generation |
character varying |
Não utilizado. |
user_defined_type_catalog |
character varying |
Não utilizado. |
user_defined_type_schema |
character varying |
Não utilizado. |
user_defined_type_name |
character varying |
Não utilizado. |
is_insertable_into |
character varying |
Não utilizado. |
is_typed |
character varying |
Não utilizado. |
commit_action |
character varying |
Não utilizado. |
parent_table_name |
character varying |
O nome da tabela pai, se essa tabela estiver entrelaçada ou
NULL . |
on_delete_action |
character varying |
Isso é definido como CASCADE ou NO ACTION para
tabelas intercaladas e NULL caso contrário. Consulte
Instruções TABLE
para mais informações. |
spanner_state |
character varying |
O estado atual de criação da tabela. Uma tabela pode passar por vários estados durante a criação, se houver operações em massa. Por exemplo, quando a tabela é criada com uma chave estrangeira que requer preenchimento do índice referenciado. Os estados possíveis são:
|
interleave_type |
character varying |
Se existe uma relação pai-filho entre essa tabela e
a tabela em que ela está intercalada. Os valores possíveis são:
|
row_deletion_policy_expression |
character varying |
Uma string que contém o texto da expressão que define o ROW
DELETION POLICY . |
table_synonyms
Esta tabela lista informações sobre sinônimos.
Nome da coluna | Tipo | Descrição |
---|---|---|
CATALOG |
STRING |
Nome do catálogo que contém a tabela. |
SCHEMA |
STRING |
Nome do esquema que contém a tabela. |
TABLE_NAME |
STRING |
Nome da tabela. |
SYNONYM_CATALOG |
STRING |
O nome do catálogo do sinônimo. |
SYNONYM_SCHEMA |
STRING |
O nome do esquema do sinônimo. |
SYNONYM_TABLE_NAME |
STRING |
O nome da tabela para o sinônimo. |
views
Essa visualização filtrada por linha lista todas as visualizações no banco de dados atual. Os participantes que
têm permissões do IAM no nível do banco de dados e os participantes que receberam
acesso ao papel do sistema spanner_info_reader
ou a membros desse
papel podem acessar todas as visualizações. Todos os outros principais só podem acessar visualizações que tenham o
privilégio de controle de acesso detalhado SELECT
concedido a elas para o papel de banco de dados atual,
para papéis de que o papel de banco de dados atual seja membro ou para public
.
Nome da coluna | Tipo | Descrição |
---|---|---|
table_catalog |
character varying |
O nome do banco de dados. |
table_schema |
character varying |
O nome do esquema. O valor padrão é public . |
table_name |
character varying |
Nome da visualização. |
view_definition |
character varying |
É o texto SQL da consulta que define a visualização. |
check_option |
character varying |
Não utilizado. |
is_updatable |
character varying |
Não utilizado. |
is_insertable_into |
character varying |
Não utilizado. |
is_trigger_updatable |
character varying |
Não utilizado. |
is_trigger_deletable |
character varying |
Não utilizado. |
is_trigger_insertable_into |
character varying |
Não utilizado. |
security_type |
character varying |
O tipo de segurança da visualização. INVOKER ou
DEFINER .
Para mais informações, consulte Sobre as visualizações. |
Examples
Retorne informações sobre cada tabela no esquema padrão:
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
Retorne o nome de todas as tabelas e visualizações no information_schema
para
bancos de dados do dialeto do PostgreSQL:
SELECT table_name
FROM information_schema.tables
WHERE table_schema = "information_schema"
Retorna informações sobre as colunas na tabela do usuário 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
Retorne informações sobre cada índice no esquema padrão no banco de dados atual: ```sql 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
Retorna todas as colunas que usam opções diferentes do padrão:
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
Retorna as opções atuais de banco de dados relacionadas ao otimizador:
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')
Retorna todos os pacotes de estatísticas disponíveis:
SELECT *
FROM information_schema.spanner_statistics;
A seguir
- Saiba mais sobre as ferramentas de introspecção disponíveis para ajudar você a investigar problemas de banco de dados.