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 (Gestione di identità e accessi):
bigquery.routines.getbigquery.routines.list
Ciascuno dei seguenti ruoli IAM predefiniti include le autorizzazioni necessarie per ottenere i metadati di routine:
roles/bigquery.adminroles/bigquery.metadataViewerroles/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 che contiene 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 | 
- 
  (Facoltativo) 
PROJECT_ID: l'ID del progetto Google Cloud . Se non specificato, viene utilizzato il progetto predefinito. - 
  
REGION: qualsiasi nome della regione del set di dati. Ad esempio:`region-us`. - 
  
DATASET_ID: l'ID del set di dati. Per ulteriori informazioni, consulta Qualificatore del set di dati. 
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
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 | +-------------------+------------------+---------------+------------------+----------------+-----------+----------------+-----------+-------------------+--------------+