Vista PARAMETERS

A vista INFORMATION_SCHEMA.PARAMETERS contém uma linha para cada parâmetro de cada rotina num conjunto de dados.

Autorizações necessárias

Para consultar a vista INFORMATION_SCHEMA.PARAMETERS, precisa das seguintes autorizações de gestão de identidade e de acesso (IAM):

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

Cada uma das seguintes funções de IAM predefinidas inclui as autorizações de que precisa para obter metadados de rotina:

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

Para mais informações sobre as autorizações do BigQuery, consulte o artigo Controlo de acesso com a IAM.

Esquema

Quando consulta a vista INFORMATION_SCHEMA.PARAMETERS, os resultados da consulta contêm uma linha para cada parâmetro de cada rotina num conjunto de dados.

A vista INFORMATION_SCHEMA.PARAMETERS tem o seguinte esquema:

Nome da coluna Tipo de dados Valor
SPECIFIC_CATALOG STRING O nome do projeto que contém o conjunto de dados no qual a rotina que contém o parâmetro está definida
SPECIFIC_SCHEMA STRING O nome do conjunto de dados que contém a rotina na qual o parâmetro está definido
SPECIFIC_NAME STRING O nome da rotina na qual o parâmetro está definido
ORDINAL_POSITION STRING A posição baseada em 1 do parâmetro ou 0 para o valor de retorno
PARAMETER_MODE STRING O modo do parâmetro, IN, OUT, INOUT ou NULL
IS_RESULT STRING Se o parâmetro é o resultado da função, YES ou NO
PARAMETER_NAME STRING O nome do parâmetro
DATA_TYPE STRING O tipo do parâmetro é ANY TYPE se definido como um tipo qualquer
PARAMETER_DEFAULT STRING O valor predefinido do parâmetro como um valor literal de SQL, sempre NULL
IS_AGGREGATE STRING Se este é um parâmetro agregado, sempre NULL

Âmbito e sintaxe

As consultas desta vista têm de incluir um conjunto de dados ou um qualificador de região. Para mais informações, consulte a secção Sintaxe. A tabela seguinte explica os âmbitos da região e dos recursos para esta vista:

Nome da visualização de propriedade Âmbito do recurso Âmbito da região
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.PARAMETERS Nível do projeto REGION
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.PARAMETERS Nível do conjunto de dados Localização do conjunto de dados
Substitua o seguinte:
  • Opcional: PROJECT_ID: o ID do seu projeto do Trusted Cloud Google Cloud. Se não for especificado, é usado o projeto predefinido.
  • REGION: qualquer nome da região do conjunto de dados. Por exemplo, `region-us`.
  • DATASET_ID: o ID do seu conjunto de dados. Para mais informações, consulte o artigo Qualificador de conjunto de dados.

Exemplo

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

Exemplo

Exemplo

Para executar a consulta num conjunto de dados num projeto que não seja o seu projeto predefinido, adicione o ID do projeto no seguinte formato:

`PROJECT_ID`.`DATASET_ID`.INFORMATION_SCHEMA.PARAMETERS
Substitua o seguinte:

  • PROJECT_ID: o ID do projeto.
  • DATASET_ID: o ID do conjunto de dados.

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

O exemplo seguinte obtém todos os parâmetros da vista INFORMATION_SCHEMA.PARAMETERS. Os metadados devolvidos são para rotinas em mydataset no seu projeto predefinido: myproject.

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

O resultado é semelhante ao seguinte:

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