Visualização de SCHEMATA

A visualização INFORMATION_SCHEMA.SCHEMATA apresenta informações sobre os conjuntos de dados em um projeto ou uma região. A visualização retorna uma linha para cada conjunto de dados.

Antes de começar

Para consultar a visualização SCHEMATA sobre metadados do conjunto de dados, você precisa da permissão bigquery.datasets.get Identity and Access Management (IAM) no nível do projeto.

Cada um dos seguintes papéis de IAM predefinidos inclui as permissões necessárias para conseguir a visualização de SCHEMATA:

  • roles/bigquery.admin
  • roles/bigquery.dataEditor
  • roles/bigquery.dataOwner
  • roles/bigquery.dataViewer

Para mais informações sobre as permissões do BigQuery, consulte Controle de acesso com o IAM.

Esquema

Os resultados das consultas na visualização INFORMATION_SCHEMA.SCHEMATA contêm uma linha para cada conjunto de dados no projeto especificado.

A visualização INFORMATION_SCHEMA.SCHEMATA tem o seguinte esquema:

Nome da coluna Tipo de dados Valor
CATALOG_NAME STRING Nome do projeto que contém o conjunto de dados
SCHEMA_NAME STRING O nome do conjunto de dados, também chamado de datasetId
SCHEMA_OWNER STRING O valor sempre é NULL.
CREATION_TIME TIMESTAMP O horário de criação do conjunto de dados.
LAST_MODIFIED_TIME TIMESTAMP O horário da última modificação do conjunto de dados.
LOCATION STRING A localização geográfica do conjunto de dados.
DDL STRING A instrução DDL CREATE SCHEMA que pode ser usada para criar o conjunto de dados
DEFAULT_COLLATION_NAME STRING Nome da especificação de compilação padrão, se houver. Caso contrário, NULL.

Escopo e sintaxe

As consultas nessa visualização precisam incluir um qualificador de região. Se você não especificar um qualificador regional, os metadados serão recuperados da região dos EUA. A tabela a seguir explica o escopo da região dessa visualização:

Mostrar nome Escopo do recurso Escopo da região
[PROJECT_ID.]INFORMATION_SCHEMA.SCHEMATA Nível do projeto Região dos EUA
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SCHEMATA Nível do projeto REGION
Substitua:

  • Opcional: PROJECT_ID: o ID do seu projeto do Google Cloud. Se não for especificado, o projeto padrão será usado.

  • REGION: qualquer nome da região do conjunto de dados. Por exemplo, `region-us`.

  • Exemplo

    -- Returns metadata for datasets in a region.
    SELECT * FROM region-us.INFORMATION_SCHEMA.SCHEMATA;
    

    Exemplo

    Para executar a consulta em um projeto diferente do projeto padrão, adicione o código do projeto ao conjunto de dados no seguinte formato:

    `PROJECT_ID`.INFORMATION_SCHEMA.SCHEMATA
    por exemplo, `myproject`.INFORMATION_SCHEMA.SCHEMATA.

    SELECT
      * EXCEPT (schema_owner)
    FROM
      INFORMATION_SCHEMA.SCHEMATA;

    O resultado será semelhante ao seguinte. Para facilitar a leitura, algumas colunas são excluídas do resultado.

    +----------------+---------------+---------------------+---------------------+------------+------------------------------------------+
    |  catalog_name  |  schema_name  |    creation_time    | last_modified_time  |  location  |                   ddl                    |
    +----------------+---------------+---------------------+---------------------+------------+------------------------------------------+
    | myproject      | mydataset1    | 2018-11-07 19:50:24 | 2018-11-07 19:50:24 | US         | CREATE SCHEMA `myproject.mydataset1`     |
    |                |               |                     |                     |            | OPTIONS(                                 |
    |                |               |                     |                     |            |   location="us"                          |
    |                |               |                     |                     |            | );                                       |
    +----------------+---------------+---------------------+---------------------+------------+------------------------------------------+
    | myproject      | mydataset2    | 2018-07-16 04:24:22 | 2018-07-16 04:24:22 | US         | CREATE SCHEMA `myproject.mydataset2`     |
    |                |               |                     |                     |            | OPTIONS(                                 |
    |                |               |                     |                     |            |   default_partition_expiration_days=3.0, |
    |                |               |                     |                     |            |   location="us"                          |
    |                |               |                     |                     |            | );                                       |
    +----------------+---------------+---------------------+---------------------+------------+------------------------------------------+
    | myproject      | mydataset3    | 2018-02-07 21:08:45 | 2018-05-01 23:32:53 | US         | CREATE SCHEMA `myproject.mydataset3`     |
    |                |               |                     |                     |            | OPTIONS(                                 |
    |                |               |                     |                     |            |   description="My dataset",              |
    |                |               |                     |                     |            |   location="us"                          |
    |                |               |                     |                     |            | );                                       |
    +----------------+---------------+---------------------+---------------------+------------+------------------------------------------+