Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

SET

Modalità Focus
SET - Amazon Redshift

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Imposta il valore di un parametro di configurazione del server. Utilizzare il comando SET per sostituire un'impostazione solo per la durata della sessione o della transazione corrente.

Utilizza il comando RESET per restituire un parametro al valore predefinito.

È possibile modificare i parametri di configurazione del server in diversi modi. Per ulteriori informazioni, consulta Modifica della configurazione del server.

Sintassi

SET { [ SESSION | LOCAL ] { SEED | parameter_name } { TO | = } { value | 'value' | DEFAULT } | SEED TO value }

La seguente istruzione imposta il valore di una variabile di contesto di sessione.

SET { [ SESSION | LOCAL ] variable_name { TO | = } { value | 'value' }

Parametri

SESSION

Specifica che l'impostazione è valida per la sessione corrente. Valore predefinito.

variable_name

Specifica il nome della variabile di contesto impostata per la sessione.

La convenzione di denominazione è un nome in due parti separato da un punto, ad esempio identifier.identifier. È consentito un solo separatore di punti. Utilizzare un identificatore che segua le regole standard degli identificatori per Amazon Redshift Per ulteriori informazioni, consulta Nomi e identificatori. Gli identificativi delimitati non sono ammessi.

LOCAL

Specifica che l'impostazione è valida per la transazione corrente.

SEED TO value

Imposta un seed interno che deve essere utilizzata dalla funzione RANDOM per la generazione di numeri casuali.

SET SEED accetta un valore numerico compreso tra 0 e 1 e moltiplica questo numero per (231-1) per l'uso con la funzione Funzione RANDOM. Se utilizzi SET SEED prima di effettuare più chiamate RANDOM, RANDOM genera numeri in una sequenza prevedibile.

parameter_name

Nome del parametro da impostare. Per informazioni sui parametri, vedi Modifica della configurazione del server.

value

Nuovo valore del parametro. Utilizza le virgolette singole per impostare il valore su una stringa specifica. Se si utilizza SET SEED, questo parametro contiene il valore SEED.

DEFAULT

Imposta il parametro sul valore predefinito.

Esempi

Modifica di un parametro per la sessione corrente

L'esempio seguente imposta il datestyle:

set datestyle to 'SQL,DMY';

Impostazione di un gruppo di query per la gestione dei carichi di lavoro

Se i gruppi di query sono elencati in una definizione di coda come parte della configurazione WLM del cluster, puoi impostare il parametro QUERY_GROUP su un nome di gruppo di query elencato. Le query successive vengono assegnate alla coda di query associata. L'impostazione di QUERY_GROUP rimane valida per la durata della sessione o finché non viene rilevato un comando RESET QUERY_GROUP.

Questo esempio esegue due query come parte del gruppo di query 'priority', quindi reimposta il gruppo di query.

set query_group to 'priority'; select tbl, count(*)from stv_blocklist; select query, elapsed, substring from svl_qlog order by query desc limit 5; reset query_group;

Per ulteriori informazioni, consulta Gestione dei carichi di lavoro.

Cambia lo spazio dei nomi di identità predefinito per la sessione

Un utente del database può impostare. default_identity_namespace Questo esempio mostra come utilizzare SET SESSION per sovrascrivere l'impostazione per la durata della sessione corrente e quindi mostrare il nuovo valore del provider di identità. Viene utilizzato più comunemente quando si utilizza un provider di identità con Redshift e IAM Identity Center. Per ulteriori informazioni sull'utilizzo di un provider di identità con Redshift, consulta Connect Redshift with IAM Identity Center per offrire agli utenti un'esperienza di single sign-on.

SET SESSION default_identity_namespace = 'MYCO'; SHOW default_identity_namespace;

Dopo aver eseguito il comando, puoi eseguire un'istruzione GRANT o un'istruzione CREATE come la seguente:

GRANT SELECT ON TABLE mytable TO alice; GRANT UPDATE ON TABLE mytable TO salesrole; CREATE USER bob password 'md50c983d1a624280812631c5389e60d48c';

In questo caso, l'effetto dell'impostazione dello spazio dei nomi di identità predefinito equivale a anteporre lo spazio dei nomi a ogni identità. In questo esempio, viene sostituito da. alice MYCO:alice Per ulteriori informazioni sulle impostazioni relative alla configurazione di Redshift con IAM Identity Center, ALTER SYSTEM consulta e. ALTER IDENTITY PROVIDER

Impostazione di un'etichetta per un gruppo di query

Il parametro QUERY_GROUP definisce un'etichetta per una o più query eseguite nella stessa sessione dopo un comando SET. A sua volta, questa etichetta viene registrata quando vengono eseguite le query e può essere utilizzata per limitare i risultati restituiti dalle tabelle di sistema STL_QUERY e STV_INFLIGHT e dalla vista SVL_QLOG.

show query_group; query_group ------------- unset (1 row) set query_group to '6 p.m.'; show query_group; query_group ------------- 6 p.m. (1 row) select * from sales where salesid=500; salesid | listid | sellerid | buyerid | eventid | dateid | ... ---------+--------+----------+---------+---------+--------+----- 500 | 504 | 3858 | 2123 | 5871 | 2052 | ... (1 row) reset query_group; select query, trim(label) querygroup, pid, trim(querytxt) sql from stl_query where label ='6 p.m.'; query | querygroup | pid | sql -------+------------+-------+---------------------------------------- 57 | 6 p.m. | 30711 | select * from sales where salesid=500; (1 row)

Le etichette dei gruppi di query sono un meccanismo utile per isolare singole query o gruppi di query eseguite come parte degli script. Non è necessario identificare e tracciare le query in base alle loro etichette IDs; puoi tracciarle tramite le loro etichette.

Impostazione di un valore di seed per la generazione di numeri casuali

L'esempio seguente utilizza l'opzione SEED con SET per far sì che la funzione RANDOM generi numeri in una sequenza prevedibile.

Innanzitutto, restituisce tre interi RANDOM senza prima impostare il valore SEED:

select cast (random() * 100 as int); int4 ------ 6 (1 row) select cast (random() * 100 as int); int4 ------ 68 (1 row) select cast (random() * 100 as int); int4 ------ 56 (1 row)

Ora impostare il valore SEED su .25, e restituire altri tre numeri RANDOM:

set seed to .25; select cast (random() * 100 as int); int4 ------ 21 (1 row) select cast (random() * 100 as int); int4 ------ 79 (1 row) select cast (random() * 100 as int); int4 ------ 12 (1 row)

Infine, ripristinare il valore SEED su .25, e verificare che RANDOM restituisca gli stessi risultati delle tre chiamate precedenti:

set seed to .25; select cast (random() * 100 as int); int4 ------ 21 (1 row) select cast (random() * 100 as int); int4 ------ 79 (1 row) select cast (random() * 100 as int); int4 ------ 12 (1 row)

Nell'esempio seguente viene impostata una variabile di contesto personalizzata.

SET app_context.user_id TO 123; SET app_context.user_id TO 'sample_variable_value';

In questa pagina

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.