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.

Por motivos de estabilidad, te recomendamos que incluyas explícitamente las columnas en tus consultas de esquema de información en lugar de usar un comodín (SELECT *). Si incluyes las columnas explícitamente, evitarás que las consultas fallen si cambia el esquema subyacente.

Á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 proyecto. Google Cloud 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         |
+-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+