Vista SCHEMATA

La vista INFORMATION_SCHEMA.SCHEMATA proporciona información sobre los conjuntos de datos de un proyecto o una región. La vista devuelve una fila por cada conjunto de datos.

Antes de empezar

Para consultar la vista SCHEMATA para obtener metadatos de conjuntos de datos, necesitas el permiso de gestión de identidades y accesos (IAM) bigquery.datasets.get a nivel de proyecto.

Cada uno de los siguientes roles de gestión de identidades y accesos predefinidos incluye los permisos que necesitas para obtener la vista SCHEMATA:

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

Para obtener más información sobre los permisos de BigQuery, consulta Control de acceso con gestión de identidades y accesos.

Esquema

Cuando consultas la vista INFORMATION_SCHEMA.SCHEMATA, los resultados de la consulta contienen una fila por cada conjunto de datos del proyecto especificado.

La vista INFORMATION_SCHEMA.SCHEMATA tiene el siguiente esquema:

Nombre de la columna Tipo de datos Valor
CATALOG_NAME STRING El nombre del proyecto que contiene el conjunto de datos
SCHEMA_NAME STRING El nombre del conjunto de datos, también denominado datasetId
SCHEMA_OWNER STRING El valor es siempre NULL.
CREATION_TIME TIMESTAMP La hora de creación del conjunto de datos
LAST_MODIFIED_TIME TIMESTAMP La hora de la última modificación del conjunto de datos
LOCATION STRING La ubicación geográfica del conjunto de datos
DDL STRING La instrucción DDL CREATE SCHEMA que se puede usar para crear el conjunto de datos
DEFAULT_COLLATION_NAME STRING El nombre de la especificación de ordenación predeterminada, si existe. De lo contrario, NULL.

Ámbito y sintaxis

Las consultas en esta vista deben incluir un calificador de región. Si no especificas un calificador regional, los metadatos se obtendrán de la región de EE. UU. En la siguiente tabla se explica el ámbito de la región de esta vista:

Nombre de la vista Ámbito de los recursos Ámbito de la región
[PROJECT_ID.]INFORMATION_SCHEMA.SCHEMATA Nivel de proyecto Región de EE. UU.
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.SCHEMATA Nivel de proyecto REGION
Sustituye lo siguiente:
  • Opcional: PROJECT_ID: el ID de tu Google Cloud proyecto. Si no se especifica, se usa el proyecto predeterminado.
  • REGION: cualquier nombre de región del conjunto de datos. Por ejemplo, `region-us`.

Ejemplo

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

Ejemplo

Para ejecutar la consulta en un proyecto que no sea el predeterminado, añade el ID del proyecto al conjunto de datos con el siguiente formato:

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

SELECT
  * EXCEPT (schema_owner)
FROM
  INFORMATION_SCHEMA.SCHEMATA;

El resultado es similar al siguiente. Para mejorar la legibilidad, algunas columnas se han excluido del 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"                          |
|                |               |                     |                     |            | );                                       |
+----------------+---------------+---------------------+---------------------+------------+------------------------------------------+