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 colonne | Type de données | Valeur |
---|---|---|
SPECIFIC_CATALOG |
STRING |
Nom du projet qui contient l'ensemble de données dans lequel la routine contenant le paramètre est définie |
SPECIFIC_SCHEMA |
STRING |
Nom de l'ensemble de données contenant la routine dans laquelle le paramètre est défini |
SPECIFIC_NAME |
STRING |
Nom de la routine dans laquelle le paramètre est défini |
ORDINAL_POSITION |
STRING |
Position en base 1 du paramètre, ou 0 pour la valeur renvoyée |
PARAMETER_MODE |
STRING |
Mode du paramètre : IN , OUT , INOUT ou NULL |
IS_RESULT |
STRING |
Indique si le paramètre est le résultat de la fonction, YES ou NO |
PARAMETER_NAME |
STRING |
Nom du paramètre |
DATA_TYPE |
STRING |
Type du paramètre, ANY TYPE s'il est défini comme n'importe quel type |
PARAMETER_DEFAULT |
STRING |
Valeur par défaut du paramètre en tant que valeur littérale SQL, toujours NULL |
IS_AGGREGATE |
STRING |
Indique 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 vue | Champ d'application de la ressource | Champ d'application de la région |
---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.PARAMETERS |
Niveau Projet | REGION |
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.PARAMETERS |
Niveau de l'ensemble de données | Emplacement d'un ensemble de données |
- 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 d'un projet autre que celui 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 | +-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+