Кассандра - усечь таблицу

Усечение таблицы

Вы можете усечь таблицу с помощью команды TRUNCATE. При усечении таблицы все строки таблицы удаляются без возможности восстановления. Ниже приводится синтаксис этой команды.

Синтаксис

TRUNCATE <tablename>

пример

Предположим, есть таблица с именем student со следующими данными.

s_id s_name s_branch s_aggregate
1 ОЗУ ЭТО 70
2 рахман EEE 75
3 Роббин Мех 72

Когда вы выполняете оператор select, чтобы получить таблицу student, это даст вам следующий результат.

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)

Теперь обрежьте таблицу с помощью команды TRUNCATE.

cqlsh:tp> TRUNCATE student;

Проверка

Убедитесь, что таблица усечена, выполнив selectзаявление. Ниже приведены выходные данные оператора select для таблицы учеников после усечения.

cqlsh:tp> select * from student;

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

(0 rows)

Усечение таблицы с использованием Java API

Вы можете усечь таблицу, используя метод execute () класса Session. Следуйте инструкциям ниже, чтобы обрезать таблицу.

Шаг 1. Создайте кластерный объект.

Прежде всего, создайте экземпляр Cluster.builder класс com.datastax.driver.core пакет, как показано ниже.

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

Добавьте точку контакта (IP-адрес узла), используя addContactPoint() метод Cluster.Builderобъект. Этот метод возвращаетCluster.Builder.

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

Используя новый объект построителя, создайте объект кластера. Для этого у вас есть метод под названиемbuild() в Cluster.Builderкласс. В следующем коде показано, как создать объект кластера.

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

Вы можете построить объект кластера, используя одну строку кода, как показано ниже.

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

Шаг 2: Создание объекта сеанса

Создайте экземпляр объекта Session, используя метод connect () класса Cluster, как показано ниже.

Session session = cluster.connect( );

Этот метод создает новый сеанс и инициализирует его. Если у вас уже есть пространство ключей, вы можете установить его на существующее, передав имя KeySpace в строковом формате этому методу, как показано ниже.

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

Здесь мы используем пространство ключей с именем tp. Поэтому создайте объект сеанса, как показано ниже.

Шаг 3: Выполнить запрос

Вы можете выполнять запросы CQL, используя метод execute () класса Session. Передайте запрос в строковом формате или в виде объекта класса Statement методу execute (). Все, что вы передадите этому методу в строковом формате, будет выполнено наcqlsh.

В следующем примере мы усекаем таблицу с именем emp. Вы должны сохранить запрос в строковой переменной и передать его вexecute() метод, как показано ниже.

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

Ниже приведена полная программа для усечения таблицы в Cassandra с использованием Java API.

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");
   }
}

Сохраните указанную выше программу с именем класса, за которым следует .java, перейдите в место, где она сохранена. Скомпилируйте и выполните программу, как показано ниже.

$javac Truncate_Table.java
$java Truncate_Table

В нормальных условиях он должен выдавать следующий результат -

Table truncated