Ansicht PARAMETERS
Die Ansicht INFORMATION_SCHEMA.PARAMETERS
enthält eine Zeile für jeden Parameter jeder Routine in einem Dataset.
Erforderliche Berechtigungen
Zum Abfragen der INFORMATION_SCHEMA.PARAMETERS
-Ansicht benötigen Sie folgende IAM-Berechtigungen (Identity and Access Management):
bigquery.routines.get
bigquery.routines.list
Jede der folgenden vordefinierten IAM-Rollen enthält die Berechtigungen, die Sie zum Abrufen von Routinemetadaten benötigen:
roles/bigquery.admin
roles/bigquery.metadataViewer
roles/bigquery.dataViewer
Weitere Informationen zu BigQuery-Berechtigungen finden Sie unter Zugriffssteuerung mit IAM.
Schema
Wenn Sie die Ansicht INFORMATION_SCHEMA.PARAMETERS
abfragen, wird im Ergebnis jeder Parameter jeder Routine in einem Dataset in einer eigenen Zeile dargestellt.
Die Ansicht INFORMATION_SCHEMA.PARAMETERS
hat das folgende Schema:
Spaltenname | Datentyp | Wert |
---|---|---|
SPECIFIC_CATALOG |
STRING |
Der Name des Projekts mit dem Dataset, in dem die Routine, in der der Parameter enthalten ist, definiert wird |
SPECIFIC_SCHEMA |
STRING |
Der Name des Datasets mit der Routine, in der der Parameter definiert wird |
SPECIFIC_NAME |
STRING |
Der Name der Routine, in der der Parameter definiert wird |
ORDINAL_POSITION |
STRING |
Die 1-basierte Position des Parameters oder 0 für den Rückgabewert |
PARAMETER_MODE |
STRING |
Der Modus des Parameters, entweder IN , OUT , INOUT oder NULL |
IS_RESULT |
STRING |
Gibt an, ob der Parameter das Ergebnis der Funktion ist; entweder YES oder NO |
PARAMETER_NAME |
STRING |
Der Name des Parameters |
DATA_TYPE |
STRING |
Der Typ des Parameters; ANY TYPE , wenn der Parameter als beliebiger Typ definiert wurde |
PARAMETER_DEFAULT |
STRING |
Der Standardwert des Parameters als SQL-Literalwert; immer NULL |
IS_AGGREGATE |
STRING |
Gibt an, ob es sich um einen Aggregatparameter handelt; immer NULL |
Bereich und Syntax
Für Abfragen dieser Ansicht muss ein Dataset- oder Regions-Qualifier verwendet werden. Weitere Informationen finden Sie unter Syntax. In der folgenden Tabelle werden die Regions- und Ressourcenbereiche für diese Ansicht erläutert:
Ansichtsname | Ressourcenbereich | Regionsbereich |
---|---|---|
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.PARAMETERS |
auf Projektebene | REGION |
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.PARAMETERS |
Dataset-Ebene | Dataset-Standort |
- Optional:
PROJECT_ID
: die ID Ihres Google Cloud-Projekts. Wenn keine Angabe erfolgt, wird das Standardprojekt verwendet. REGION
: ist ein beliebiger Dataset-Regionsname. Beispiel:region-us
DATASET_ID
: die ID Ihres Datasets. Weitere Informationen finden Sie unter Dataset-Qualifier.
Beispiel
-- 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;
Beispiel
Beispiel
Wenn Sie die Abfrage für ein Dataset in einem anderen Projekt als Ihrem Standardprojekt ausführen möchten, fügen Sie die Projekt-ID im folgenden Format hinzu:
`PROJECT_ID`.`DATASET_ID`.INFORMATION_SCHEMA.PARAMETERS. Dabei gilt:
PROJECT_ID
: die ID des Projekts.DATASET_ID
: Die ID des Datasets.
z. B. example-project.mydataset.INFORMATION_SCHEMA.JOBS_BY_PROJECT
.
Im folgenden Beispiel werden alle Parameter der Ansicht INFORMATION_SCHEMA.PARAMETERS
abgerufen. Die zurückgegebenen Metadaten beziehen sich auf Abläufe in mydataset
in Ihrem Standardprojekt myproject
.
SELECT * EXCEPT(is_typed) FROM mydataset.INFORMATION_SCHEMA.PARAMETERS WHERE table_type = 'BASE TABLE';
Das Ergebnis sieht etwa so aus:
+-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+ | 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 | +-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+