Visualizzazione PARAMETRI

La visualizzazione INFORMATION_SCHEMA.PARAMETERS contiene una riga per ogni parametro di ogni routine in un set di dati.

Autorizzazioni obbligatorie

Per eseguire query sulla visualizzazione INFORMATION_SCHEMA.PARAMETERS, devi disporre delle seguenti autorizzazioni IAM (Identity and Access Management):

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

Ciascuno dei seguenti ruoli IAM predefiniti include le autorizzazioni necessarie per ottenere i metadati di routine:

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

Per ulteriori informazioni sulle autorizzazioni BigQuery, consulta Controllo dell'accesso con IAM.

Schema

Quando esegui una query sulla visualizzazione INFORMATION_SCHEMA.PARAMETERS, i risultati della query contengono una riga per ogni parametro di ogni routine in un set di dati.

La vista INFORMATION_SCHEMA.PARAMETERS ha lo schema seguente:

Nome colonna Tipo di dati Valore
SPECIFIC_CATALOG STRING Il nome del progetto che contiene il set di dati in cui è definita la routine contenente il parametro
SPECIFIC_SCHEMA STRING Il nome del set di dati contenente la routine in cui è definito il parametro
SPECIFIC_NAME STRING Il nome della routine in cui è definito il parametro
ORDINAL_POSITION STRING La posizione del parametro basata su 1 o 0 per il valore restituito
PARAMETER_MODE STRING La modalità del parametro, IN, OUT, INOUT o NULL
IS_RESULT STRING Indica se il parametro è il risultato della funzione, YES o NO
PARAMETER_NAME STRING Il nome del parametro
DATA_TYPE STRING Il tipo del parametro sarà ANY TYPE se definito come tipo qualsiasi
PARAMETER_DEFAULT STRING Il valore predefinito del parametro come valore letterale SQL, sempre NULL
IS_AGGREGATE STRING Se si tratta di un parametro aggregato, sempre NULL

Ambito e sintassi

Le query su questa vista devono includere un set di dati o un qualificatore di regione. Per ulteriori informazioni, consulta la sezione Sintassi. La tabella seguente illustra gli ambiti della regione e delle risorse per questa visualizzazione:

Nome vista Ambito risorsa Ambito regione
[PROJECT_ID.]`region-REGION`.INFORMATION_SCHEMA.PARAMETERS Livello progetto REGION
[PROJECT_ID.]DATASET_ID.INFORMATION_SCHEMA.PARAMETERS A livello di set di dati Posizione del set di dati
Sostituisci quanto segue:

  • Facoltativo: PROJECT_ID: l'ID del tuo progetto Google Cloud. Se non viene specificato, viene utilizzato il progetto predefinito.

    Esempio

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

    Esempio

    Esempio

    Per eseguire la query su un set di dati in un progetto diverso da quello predefinito, aggiungi l'ID progetto nel seguente formato:

    `PROJECT_ID`.`DATASET_ID`.INFORMATION_SCHEMA.PARAMETERS
    Sostituisci quanto segue:

    • PROJECT_ID: l'ID del progetto.
    • DATASET_ID: l'ID del set di dati.

    Ad esempio, example-project.mydataset.INFORMATION_SCHEMA.JOBS_BY_PROJECT.

    L'esempio seguente recupera tutti i parametri dalla vista INFORMATION_SCHEMA.PARAMETERS. I metadati restituiti riguardano le routine in mydataset nel tuo progetto predefinito myproject.

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

    Il risultato è simile al seguente:

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