

 Amazon Redshift ne prendra plus en charge la création de nouveaux Python à UDFs partir du patch 198. UDFs Le Python existant continuera de fonctionner jusqu'au 30 juin 2026. Pour plus d’informations, consultez le [ billet de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# TRUNCATE
<a name="r_TRUNCATE"></a>

Supprime toutes les lignes d’une table sans faire une analyse de table : cette opération est une alternative plus rapide pour une opération DELETE non qualifiée. Pour exécuter une commande TRUNCATE, des autorisations TRUNCATE TABLE ont dû vous être accordées, vous devez être le propriétaire de la table ou être un super-utilisateur. Pour accorder les autorisations de tronquer une table, utilisez la commande [GRANT](r_GRANT.md).

TRUNCATE est beaucoup plus efficace que DELETE et ne requiert ni opération VACUUM ni opération ANALYZE. Cependant, sachez que TRUNCATE valide la transaction dans laquelle l’opération est exécutée.

## Syntaxe
<a name="r_TRUNCATE-synopsis"></a>

```
TRUNCATE [ TABLE ] table_name
```

La commande fonctionne également sur une vue matérialisée.

```
TRUNCATE materialized_view_name
```

## Parameters
<a name="r_TRUNCATE-parameters"></a>

TABLE   
Mot-clé facultatif. 

 *table\$1name*   
Table temporaire ou permanente. Seul le propriétaire de la table ou un super-utilisateur peut tronquer une table.   
Vous pouvez tronquer quelque table que ce soit, y compris les tables référencées dans des contraintes de clé étrangère.   
Vous n’avez pas besoin d’exécuter une opération VACUUM sur une table après l’avoir tronquée. 

 *materialized\$1view\$1name*   
Vue matérialisée.  
Vous pouvez tronquer une vue matérialisée utilisée pour [Ingestion en streaming vers une vue matérialisée](materialized-view-streaming-ingestion.md). 

## Notes d’utilisation
<a name="r_TRUNCATE_usage_notes"></a>
+  La commande TRUNCATE valide la transaction dans laquelle elle est exécutée ; par conséquent, vous ne pouvez pas annuler une opération TRUNCATE et une commande TRUNCATE peut valider les autres opérations quand elle se valide elle-même. 
+ Les opérations TRUNCATE sont verrouillées exclusivement lorsqu’elles sont exécutées sur Amazon Redshift, des vues matérialisées en streaming connectées à l’un des éléments suivants :
  +  Un flux de données Amazon Kinesis 
  +  Une rubrique Amazon Managed Streaming pour Apache Kafka 
  +  Un flux externe pris en charge, tel qu’une rubrique Confluent Cloud Kafka 

  Pour plus d’informations, consultez [Ingestion en streaming vers une vue matérialisée](materialized-view-streaming-ingestion.md).

## Exemples
<a name="r_TRUNCATE-examples"></a>

Utilisez la commande TRUNCATE pour supprimer toutes les lignes de la table CATEGORY : 

```
truncate category;
```

Essayez d’annuler une opération TRUNCATE : 

```
begin;

truncate date;

rollback;

select count(*) from date;
count
-------
0
(1 row)
```

La table DATE demeure vide après la commande ROLLBACK, car la commande TRUNCATE s’est validée automatiquement. 

L’exemple suivant utilise la commande TRUNCATE pour supprimer toutes les lignes d’une vue matérialisée. 

```
truncate my_materialized_view;
```

Elle supprime tous les enregistrements de la vue matérialisée et laisse la vue matérialisée et son schéma intacts. Dans la requête, le nom de la vue matérialisée est un exemple.