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
Ersetzen Sie Folgendes:

  • Optional: PROJECT_ID: die ID Ihres Google Cloud-Projekts. Wenn keine Angabe erfolgt, wird das Standardprojekt verwendet.

    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
    Ersetzen Sie Folgendes:

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