Vista PARÁMETROS

La vista INFORMATION_SCHEMA.PARAMETERS contiene una fila por cada parámetro de cada rutina de un conjunto de datos.

Permisos obligatorios

Para consultar la vista INFORMATION_SCHEMA.PARAMETERS, necesitas los siguientes permisos de gestión de identidades y accesos (IAM):

  • bigquery.routines.get
  • bigquery.routines.list

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

  • roles/bigquery.admin
  • roles/bigquery.metadataViewer
  • 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.PARAMETERS, los resultados de la consulta contienen una fila por cada parámetro de cada rutina de un conjunto de datos.

La vista INFORMATION_SCHEMA.PARAMETERS tiene el siguiente esquema:

Nombre de la columna Tipo de datos Valor
SPECIFIC_CATALOG STRING Nombre del proyecto que contiene el conjunto de datos en el que se define la rutina que contiene el parámetro
SPECIFIC_SCHEMA STRING El nombre del conjunto de datos que contiene la rutina en la que se define el parámetro
SPECIFIC_NAME STRING Nombre de la rutina en la que se define el parámetro.
ORDINAL_POSITION STRING La posición del parámetro (basada en 1) o 0 para el valor devuelto
PARAMETER_MODE STRING El modo del parámetro, que puede ser IN, OUT, INOUT o NULL
IS_RESULT STRING Si el parámetro es el resultado de la función, YES o NO
PARAMETER_NAME STRING Nombre del parámetro
DATA_TYPE STRING El tipo del parámetro será ANY TYPE si se define como cualquier tipo.
PARAMETER_DEFAULT STRING El valor predeterminado del parámetro como valor literal de SQL, siempre NULL
IS_AGGREGATE STRING Indica si se trata de un parámetro agregado. Siempre es NULL.

Ámbito y sintaxis

Las consultas en esta vista deben incluir un conjunto de datos o un calificador de región. Para obtener más información, consulta la sección Sintaxis. En la siguiente tabla se explican los ámbitos de región y de recurso de esta vista:

Nombre de la vista Ámbito de los recursos Ámbito de la región
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.PARAMETERS Nivel de proyecto REGION
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.PARAMETERS Nivel del conjunto de datos Ubicación del conjunto de datos
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`.
  • DATASET_ID: el ID de tu conjunto de datos. Para obtener más información, consulta Calificador de conjunto de datos.

Ejemplo

-- Returns metadata for parameters of a routine in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.PARAMETERS;

-- Returns metadata for parameters of a routine in a region.
SELECT * FROM region-us.INFORMATION_SCHEMA.PARAMETERS;

Ejemplo

Ejemplo

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

`PROJECT_ID`.`DATASET_ID`.INFORMATION_SCHEMA.PARAMETERS
Sustituye lo siguiente:

  • PROJECT_ID: el ID del proyecto.
  • DATASET_ID: el ID del conjunto de datos.

Por ejemplo, example-project.mydataset.INFORMATION_SCHEMA.JOBS_BY_PROJECT.

En el siguiente ejemplo se recuperan todos los parámetros de la vista INFORMATION_SCHEMA.PARAMETERS. Los metadatos devueltos corresponden a las rutinas de mydataset de tu proyecto predeterminado, myproject.

SELECT
  * EXCEPT(is_typed)
FROM
  mydataset.INFORMATION_SCHEMA.PARAMETERS
WHERE
  table_type = 'BASE TABLE';

El resultado es similar al siguiente:

+-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+
| specific_catalog  | specific_schema  | specific_name | ordinal_position | parameter_mode | is_result | parameter_name | data_type | parameter_default | is_aggregate |
+-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+
| myproject         | mydataset        | myroutine1    | 0                | NULL           | YES       | NULL           | INT64     | NULL              | NULL         |
| myproject         | mydataset        | myroutine1    | 1                | NULL           | NO        | x              | INT64     | NULL              | NULL         |
+-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+