Supprimer les données d'une table à l'aide de l'CQLDELETEinstruction - Amazon Keyspaces (pour Apache Cassandra)

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.

Supprimer les données d'une table à l'aide de l'CQLDELETEinstruction

Pour supprimer les données de votre table book_awards, utilisez l'instruction DELETE.

Vous pouvez supprimer des données d'une ligne ou d'une partition. Soyez prudent lorsque vous supprimez des données, car les suppressions sont irréversibles.

La suppression d'une ou de toutes les lignes d'un tableau n'entraîne pas la suppression du tableau. Ainsi, vous pouvez le remplir à nouveau avec des données. La suppression d'une table supprime la table et toutes les données qu'elle contient. Pour réutiliser la table, vous devez la recréer et y ajouter des données. La suppression d'un keyspace supprime le keyspace et toutes les tables qu'il contient. Pour utiliser le keyspace et les tables, vous devez les recréer, puis les remplir avec des données. Vous pouvez utiliser la restauration d'Amazon Keyspaces oint-in-time (PPITR) pour restaurer les tables supprimées. Pour en savoir plus, consultez. Backup et restauration des données avec point-in-time restauration pour Amazon Keyspaces Pour savoir comment restaurer une table supprimée lorsque PITR cette option est activée, consultezRestaurer une table supprimée à l'aide d'Amazon Keyspaces PITR.

Supprimer des cellules

La suppression d'une colonne d'une ligne supprime les données de la cellule spécifiée. Lorsque vous affichez cette colonne à l'aide d'une SELECT instruction, les données sont affichées sous la forme null, bien qu'aucune valeur nulle ne soit stockée à cet emplacement.

La syntaxe générale permettant de supprimer une ou plusieurs colonnes spécifiques est la suivante.

DELETE column_name1[, column_name2...] FROM table_name WHERE condition ;

Dans votre book_awards tableau, vous pouvez voir que le titre du livre qui a remporté le premier prix du prix « Richard Roe » 2020 est « Long Summer ». Imaginez que ce titre ait été rappelé et que vous deviez supprimer les données de cette cellule.

Pour supprimer une cellule spécifique
  1. Ouvrir AWS CloudShell et connectez-vous à Amazon Keyspaces à l'aide de la commande suivante. Assurez-vous de mettre à jour us-east-1 avec votre propre région.

    cqlsh-expansion cassandra.us-east-1.amazonaws.com 9142 --ssl
  2. Exécutez la requête DELETE suivante :

    DELETE book_title FROM catalog.book_awards WHERE year=2020 AND award='Richard Roe' AND category='Fiction' AND rank=1;
  3. Vérifiez que la demande de suppression a été effectuée comme prévu.

    SELECT * FROM catalog.book_awards WHERE year=2020 AND award='Richard Roe' AND category='Fiction' AND rank=1;

    Le résultat de cette instruction ressemble à ceci.

    year | award | category | rank | author | book_title | publisher ------+-------------+----------+------+-------------------+------------+--------------- 2020 | Richard Roe | Fiction | 1 | Alejandro Rosalez | null | SomePublisher

Supprimer les lignes

Il peut arriver que vous deviez supprimer une ligne entière, par exemple pour répondre à une demande de suppression de données. La syntaxe générale pour supprimer une ligne est la suivante.

DELETE FROM table_name WHERE condition ;
Pour supprimer une ligne
  1. Ouvrir AWS CloudShell et connectez-vous à Amazon Keyspaces à l'aide de la commande suivante. Assurez-vous de mettre à jour us-east-1 avec votre propre région.

    cqlsh-expansion cassandra.us-east-1.amazonaws.com 9142 --ssl
  2. Exécutez la requête DELETE suivante :

    DELETE FROM catalog.book_awards WHERE year=2020 AND award='Richard Roe' AND category='Fiction' AND rank=1;
  3. Vérifiez que la suppression a été effectuée comme prévu.

    SELECT * FROM catalog.book_awards WHERE year=2020 AND award='Richard Roe' AND category='Fiction' AND rank=1;

    Le résultat de cette instruction ressemble à ceci une fois la ligne supprimée.

    year | award | category | rank | author | book_title | publisher ------+-------+----------+------+--------+------------+----------- (0 rows)

Vous pouvez supprimer automatiquement les données expirées de votre tableau à l'aide d'Amazon Keyspaces Time to Live. Pour plus d'informations, consultez. Expirer les données avec Time to Live (TTL) pour Amazon Keyspaces (pour Apache Cassandra)