Cassandra - Table tronquée

Tronquer une table

Vous pouvez tronquer une table à l'aide de la commande TRUNCATE. Lorsque vous tronquez une table, toutes les lignes de la table sont supprimées définitivement. Vous trouverez ci-dessous la syntaxe de cette commande.

Syntaxe

TRUNCATE <tablename>

Exemple

Supposons qu'il existe une table appelée student avec les données suivantes.

s_id Le nom de s_branch s_aggregate
1 RAM IL 70
2 rahman EEE 75
3 robbin Mech 72

Lorsque vous exécutez l'instruction select pour obtenir la table student, il vous donnera la sortie suivante.

cqlsh:tp> select * from student;

 s_id | s_aggregate | s_branch | s_name
------+-------------+----------+--------
    1 |          70 |       IT | ram
    2 |          75 |      EEE | rahman
    3 |          72 |     MECH | robbin

(3 rows)

Tronquez maintenant la table à l'aide de la commande TRUNCATE.

cqlsh:tp> TRUNCATE student;

Vérification

Vérifiez si la table est tronquée en exécutant le selectdéclaration. Vous trouverez ci-dessous la sortie de l'instruction select sur la table Student après la troncature.

cqlsh:tp> select * from student;

 s_id | s_aggregate | s_branch | s_name
------+-------------+----------+--------

(0 rows)

Tronquer une table à l'aide de l'API Java

Vous pouvez tronquer une table à l'aide de la méthode execute () de la classe Session. Suivez les étapes ci-dessous pour tronquer un tableau.

Étape 1: créer un objet de cluster

Tout d'abord, créez une instance de Cluster.builder une sorte de com.datastax.driver.core paquet comme indiqué ci-dessous.

//Creating Cluster.Builder object
Cluster.Builder builder1 = Cluster.builder();

Ajoutez un point de contact (adresse IP du nœud) à l'aide du addContactPoint() méthode de Cluster.Builderobjet. Cette méthode renvoieCluster.Builder.

//Adding contact point to the Cluster.Builder object
Cluster.Builder builder2 = build.addContactPoint( "127.0.0.1" );

À l'aide du nouvel objet de générateur, créez un objet de cluster. Pour ce faire, vous disposez d'une méthode appeléebuild() dans le Cluster.Builderclasse. Le code suivant montre comment créer un objet de cluster.

//Building a cluster
Cluster cluster = builder.build();

Vous pouvez créer un objet de cluster en utilisant une seule ligne de code comme indiqué ci-dessous.

Cluster cluster = Cluster.builder().addContactPoint("127.0.0.1").build();

Étape 2: création d'un objet de session

Créez une instance de l'objet Session à l'aide de la méthode connect () de la classe Cluster comme indiqué ci-dessous.

Session session = cluster.connect( );

Cette méthode crée une nouvelle session et l'initialise. Si vous avez déjà un espace de clés, vous pouvez le définir sur celui existant en transmettant le nom de l'espace de clé au format chaîne à cette méthode, comme indiqué ci-dessous.

Session session = cluster.connect(“ Your keyspace name ” );
Session session = cluster.connect(“ tp” );

Ici, nous utilisons l'espace de clés nommé tp. Par conséquent, créez l'objet de session comme indiqué ci-dessous.

Étape 3: Exécuter la requête

Vous pouvez exécuter des requêtes CQL en utilisant la méthode execute () de la classe Session. Transmettez la requête au format chaîne ou en tant qu'objet de classe Statement à la méthode execute (). Tout ce que vous passez à cette méthode au format chaîne sera exécuté sur lecqlsh.

Dans l'exemple suivant, nous tronquons une table nommée emp. Vous devez stocker la requête dans une variable chaîne et la transmettre auexecute() méthode comme indiqué ci-dessous.

//Query
String query = "TRUNCATE emp;;”;
session.execute(query);

Vous trouverez ci-dessous le programme complet pour tronquer une table dans Cassandra à l'aide de l'API Java.

import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Session;

public class Truncate_Table {

   public static void main(String args[]){
   
      //Query
      String query = "Truncate student;";
   
      //Creating Cluster object
      Cluster cluster = Cluster.builder().addContactPoint("127.0.0.1").build();
   
      //Creating Session object
      Session session = cluster.connect("tp");
   
      //Executing the query
      session.execute(query);
      System.out.println("Table truncated");
   }
}

Enregistrez le programme ci-dessus avec le nom de la classe suivi de .java, accédez à l'emplacement où il est enregistré. Compilez et exécutez le programme comme indiqué ci-dessous.

$javac Truncate_Table.java
$java Truncate_Table

Dans des conditions normales, il devrait produire la sortie suivante -

Table truncated