Vista ROUTINE_OPTIONS

La vista INFORMATION_SCHEMA.ROUTINE_OPTIONS contiene una fila para cada opción de cada rutina en un conjunto de datos.

Permisos necesarios

Para consultar la vista INFORMATION_SCHEMA.ROUTINE_OPTIONS, necesitas los siguientes permisos de Identity and Access Management (IAM):

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

Cada una de las siguientes funciones predefinidas de IAM incluye los permisos que necesitas para obtener metadatos de rutina:

  • roles/bigquery.admin
  • roles/bigquery.metadataViewer
  • roles/bigquery.dataViewer

Para obtener más información sobre IAM de BigQuery, consulta Control de acceso con IAM.

Schema

Cuando consultas la vista INFORMATION_SCHEMA.ROUTINE_OPTIONS, los resultados de la consulta contienen una fila por cada opción de cada rutina en un conjunto de datos.

La vista INFORMATION_SCHEMA.ROUTINE_OPTIONS tiene el siguiente esquema:

Nombre de la columna Tipo de datos Valor
SPECIFIC_CATALOG STRING El nombre del proyecto que contiene la rutina en la que se define la opción
SPECIFIC_SCHEMA STRING El nombre del conjunto de datos que contiene la rutina en la que se define la opción
SPECIFIC_NAME STRING El nombre de la rutina
OPTION_NAME STRING Uno de los valores de nombre de la tabla de opciones
OPTION_TYPE STRING Uno de los valores de tipo de datos en la tabla de opciones
OPTION_VALUE STRING Una de las opciones de valor en la tabla de opciones
Tabla de opciones
OPTION_NAME OPTION_TYPE OPTION_VALUE
description STRING La descripción de la rutina, si está definida
library ARRAY Los nombres de las bibliotecas a las que se hace referencia en la rutina. Solo aplicable para las UDF en JavaScript
data_governance_type DataGovernanceType El nombre del tipo de administración de datos compatible. Por ejemplo, DATA_MASKING.

Permiso y sintaxis

Las consultas realizadas a esta vista deben incluir un conjunto de datos o un calificador de región. Para obtener más información, consulta Sintaxis. En la siguiente tabla, se explican los permisos de la región y los recursos para esta vista:

Nombre de la vista Permiso del recurso Permiso de la región
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.ROUTINE_OPTIONS Nivel de proyecto REGION
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.ROUTINE_OPTIONS Nivel de conjunto de datos Ubicación del conjunto de datos
Reemplaza lo siguiente:

Ejemplo

-- Returns metadata for routines in a single dataset.
SELECT * FROM myDataset.INFORMATION_SCHEMA.ROUTINE_OPTIONS;

-- Returns metadata for routines in a region.
SELECT * FROM region-us.INFORMATION_SCHEMA.ROUTINE_OPTIONS;

Ejemplo

Ejemplo 1:

En el ejemplo que sigue, se recuperan las opciones de rutina de todas las rutinas en mydataset dentro del proyecto predeterminado (myproject) mediante una consulta a la vista INFORMATION_SCHEMA.ROUTINE_OPTIONS:

SELECT
  *
FROM
  mydataset.INFORMATION_SCHEMA.ROUTINE_OPTIONS;

El resultado es similar al siguiente:

+-------------------+------------------+---------------+----------------------+---------------+------------------+
| specific_catalog  | specific_schema  | specific_name |     option_name      | option_type   | option_value     |
+-------------------+------------------+---------------+----------------------+---------------+------------------+
| myproject         | mydataset        | myroutine1    | description          | STRING        | "a description"  |
| myproject         | mydataset        | myroutine2    | library              | ARRAY<STRING> | ["a.js", "b.js"] |
+-------------------+------------------+---------------+----------------------+---------------+------------------+