Vue PARAMETERS

La vue INFORMATION_SCHEMA.PARAMETERS contient une ligne pour chaque paramètre de chaque routine d'un ensemble de données.

Autorisations requises

Pour interroger la vue INFORMATION_SCHEMA.PARAMETERS, vous avez besoin des autorisations IAM (Identity and Access Management) suivantes:

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

Chacun des rôles IAM prédéfinis suivants inclut les autorisations dont vous avez besoin pour obtenir les métadonnées de routine:

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

Pour plus d'informations sur les autorisations BigQuery, consultez la page Contrôle des accès avec IAM.

Schéma

Lorsque vous interrogez la vue INFORMATION_SCHEMA.PARAMETERS, les résultats de la requête contiennent une ligne pour chaque paramètre de chaque routine d'un ensemble de données.

La vue INFORMATION_SCHEMA.PARAMETERS présente le schéma suivant :

Nom de la colonneType de donnéesValeur
SPECIFIC_CATALOGSTRINGNom du projet qui contient l'ensemble de données dans lequel la routine contenant le paramètre est définie
SPECIFIC_SCHEMASTRINGNom de l'ensemble de données contenant la routine dans laquelle le paramètre est défini
SPECIFIC_NAMESTRINGNom de la routine dans laquelle le paramètre est défini
ORDINAL_POSITIONSTRINGPosition en base 1 du paramètre, ou 0 pour la valeur renvoyée
PARAMETER_MODESTRINGMode du paramètre : IN, OUT, INOUT ou NULL
IS_RESULTSTRINGIndique si le paramètre est le résultat de la fonction, YES ou NO
PARAMETER_NAMESTRINGNom du paramètre
DATA_TYPESTRINGType du paramètre, ANY TYPE s'il est défini comme n'importe quel type
PARAMETER_DEFAULTSTRINGValeur par défaut du paramètre en tant que valeur littérale SQL, toujours NULL
IS_AGGREGATESTRINGIndique s'il s'agit d'un paramètre d'agrégation, toujours NULL

Champ d'application et syntaxe

Les requêtes exécutées sur cette vue doivent inclure un ensemble de données ou un qualificatif de région. Pour en savoir plus, consultez la section Syntaxe. Le tableau suivant explique la portée des régions et des ressources pour cette vue :

Nom de la vueChamp d'application de la ressourceChamp d'application de la région
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.PARAMETERSNiveau ProjetREGION
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.PARAMETERSNiveau de l'ensemble de donnéesEmplacement de l'ensemble de données
Remplacez l'élément suivant :
  • Facultatif: PROJECT_ID: ID de votre projet Google Cloud . Si non spécifié, le projet par défaut est utilisé.
  • REGION : tout nom de région d'ensemble de données. Exemple : `region-us`.
  • DATASET_ID : ID de votre ensemble de données. Pour en savoir plus, consultez la section Qualificatif d'ensemble de données.

Exemple

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

Exemple

Exemple

Pour exécuter la requête sur un ensemble de données dans un projet autre que votre projet par défaut, ajoutez l'ID du projet en respectant le format suivant:

`PROJECT_ID`.`DATASET_ID`.INFORMATION_SCHEMA.PARAMETERS
Remplacez les éléments suivants :

  • PROJECT_ID : ID du projet.
  • DATASET_ID : ID de l'ensemble de données.

Par exemple, example-project.mydataset.INFORMATION_SCHEMA.JOBS_BY_PROJECT.

L'exemple suivant récupère tous les paramètres de la vue INFORMATION_SCHEMA.PARAMETERS. Les métadonnées renvoyées concernent les routines de mydataset dans votre projet par défaut (myproject).

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

Le résultat ressemble à ce qui suit :

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