Visualização ROUTINE_OPTIONS

A visualização INFORMATION_SCHEMA.ROUTINE_OPTIONS contém uma linha para cada opção de cada rotina em um conjunto de dados.

Permissões necessárias

Para consultar a visualização INFORMATION_SCHEMA.ROUTINE_OPTIONS, você precisa das seguintes permissões de gerenciamento de identidade e acesso (IAM, na sigla em inglês):

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

Cada um dos seguintes papéis predefinidos do IAM inclui as permissões necessárias para receber metadados de rotina:

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

Para mais informações sobre as permissões do BigQuery, consulte Controle de acesso com o IAM.

Esquema

Quando você consulta a visualização INFORMATION_SCHEMA.ROUTINE_OPTIONS, os resultados da consulta contêm uma linha para cada opção de cada rotina em um conjunto de dados.

A visualização INFORMATION_SCHEMA.ROUTINE_OPTIONS tem o seguinte esquema:

Nome da coluna Tipo de dados Valor
SPECIFIC_CATALOG STRING O nome do projeto que contém a rotina em que a opção está definida
SPECIFIC_SCHEMA STRING O nome do conjunto de dados que contém a rotina em que a opção está definida
SPECIFIC_NAME STRING O nome da rotina
OPTION_NAME STRING Um dos valores de nome na tabela opções.
OPTION_TYPE STRING Um dos valores de tipo de dados na tabela de opções.
OPTION_VALUE STRING Uma das opções de valor na tabela de opções.
Tabela de opções
OPTION_NAME OPTION_TYPE OPTION_VALUE
description STRING A descrição da rotina, se definida
library ARRAY Os nomes das bibliotecas referenciadas na rotina. Aplicável apenas a UDFs JavaScript
data_governance_type DataGovernanceType O nome do tipo de governança de dados compatível. Por exemplo, DATA_MASKING.

Escopo e sintaxe

As consultas nessa visualização precisam incluir um conjunto de dados ou um qualificador de região. Para mais informações, consulte Sintaxe. A tabela a seguir explica os escopos de região e recurso dessa visualização:

Nome da visualização Escopo do recurso Escopo da região
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.ROUTINE_OPTIONS Nível do projeto REGION
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.ROUTINE_OPTIONS Nível do conjunto de dados Local do conjunto de dados
Substitua:

  • Opcional: PROJECT_ID: o ID do seu projeto do Google Cloud. Se não for especificado, o projeto padrão será usado.
: + REGION: qualquer nome da região do conjunto de dados. Por exemplo, region-us. + DATASET_ID: ID do conjunto de dados. Para mais informações, consulte Qualificador de conjunto de dados.

Exemplo

-- 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;

Exemplo

Exemplo 1:

O exemplo a seguir recupera as opções de rotina para todas as rotinas em mydataset no seu projeto padrão (myproject) consultando a visualização INFORMATION_SCHEMA.ROUTINE_OPTIONS:

SELECT
  *
FROM
  mydataset.INFORMATION_SCHEMA.ROUTINE_OPTIONS;

O resultado será semelhante ao seguinte:

+-------------------+------------------+---------------+----------------------+---------------+------------------+
| 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"] |
+-------------------+------------------+---------------+----------------------+---------------+------------------+