

 Amazon Redshift non supporterà più la creazione di nuovi Python UDFs a partire dalla Patch 198. Python esistente UDFs continuerà a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il [post del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

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à.

# PG\$1CANCEL\$1BACKEND
<a name="PG_CANCEL_BACKEND"></a>

Annulla una query. PG\$1CANCEL\$1BACKEND è funzionalmente equivalente al comando [CANCEL](r_CANCEL.md). È possibile annullare solo le query attualmente eseguite dall'utente. Gli utenti con privilegi avanzati possono cancellare qualsiasi query.

## Sintassi
<a name="PG_CANCEL_BACKEND-synopsis"></a>

```
pg_cancel_backend( pid )
```

## Arguments (Argomenti)
<a name="PG_CANCEL_BACKEND-arguments"></a>

 *pid*   
L'ID del processo (PID) della query da annullare. Non è possibile annullare una query specificando un ID query; è necessario specificare l'ID processo della query. Richiede un valore `INTEGER`.

## Tipo restituito
<a name="PG_CANCEL_BACKEND-return-type"></a>

Nessuno

## Note per l’utilizzo
<a name="PG_CANCEL_BACKEND-usage-notes"></a>

Se le query in più sessioni contengono blocchi sulla stessa tabella, è possibile utilizzare la funzione [PG\$1TERMINATE\$1BACKEND](PG_TERMINATE_BACKEND.md) per terminare una delle sessioni, forzando qualsiasi transazione attualmente in esecuzione nella sessione terminata per rilasciare tutti i blocchi ed eseguire il rollback della transazione. Eseguire una query sulla tabella del catalogo PG\$1\$1LOCKS per visualizzare i blocchi attuali. Se non è possibile annullare una query perché si trova nel blocco di transazioni (BEGIN ... END), è possibile interrompere la sessione in cui viene eseguita la query utilizzando la funzione PG\$1TERMINATE\$1BACKEND. 

## Esempi
<a name="PG_CANCEL_BACKEND-example"></a>

Per annullare una query attualmente in esecuzione, recupera prima l'ID processo della query che vuoi annullare. Per determinare il processo IDs per tutte le query attualmente in esecuzione, esegui il comando seguente. 

```
SELECT pid, TRIM(starttime) AS start, 
duration, TRIM(user_name) AS user,
SUBSTRING(query,1,40) AS querytxt
FROM stv_recents
WHERE status = 'Running';

+-----+------------------------+----------+--------+-----------------------------+
| pid |       starttime        | duration |  user  |          querytxt           |
+-----+------------------------+----------+--------+-----------------------------+
| 802 | 2013-10-14 09:19:03.55 |      132 | dwuser | select venuename from venue |
| 834 | 2013-10-14 08:33:49.47 |  1250414 | dwuser | select * from listing;      |
| 964 | 2013-10-14 08:30:43.29 |   326179 | dwuser | select sellerid from sales  |
+-----+------------------------+----------+--------+-----------------------------+
```

Per annullare la query con l'ID di processo 802, utilizza l'esempio seguente.

```
SELECT PG_CANCEL_BACKEND(802);
```