Vista ROUTINE_OPTIONS
La vista INFORMATION_SCHEMA.ROUTINE_OPTIONS contiene una fila por cada opción de cada rutina de un conjunto de datos.
Permisos obligatorios
Para consultar la vista INFORMATION_SCHEMA.ROUTINE_OPTIONS, 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 de rutina:
- 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.ROUTINE_OPTIONS, los resultados de la consulta contienen una fila por cada opción de cada rutina de 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 | 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 de la tabla de opciones | 
| OPTION_VALUE | STRING | Una de las opciones de valor de la tabla de opciones | 
Tabla de opciones
| OPTION_NAME | OPTION_TYPE | OPTION_VALUE | 
|---|---|---|
| description | STRING | La descripción de la rutina, si se ha definido | 
| library | ARRAY | Los nombres de las bibliotecas a las que se hace referencia en la rutina. Solo se aplica a las funciones definidas por el usuario de JavaScript | 
| data_governance_type | DataGovernanceType | Nombre del tipo de gobierno de datos admitido. Por ejemplo, DATA_MASKING. | 
Á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.ROUTINE_OPTIONS | Nivel de proyecto | REGION | 
| [PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.ROUTINE_OPTIONS | Nivel del conjunto de datos | Ubicación del conjunto de datos | 
- 
  Opcional: PROJECT_ID: el ID de tu Cloud de Confiance 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 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 siguiente ejemplo se obtienen las opciones de rutina de todas las rutinas de mydataset en tu proyecto predeterminado (myproject) consultando 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"] | +-------------------+------------------+---------------+----------------------+---------------+------------------+