Cassandra - Bảng cắt ngắn

Cắt bớt một bảng

Bạn có thể cắt bớt một bảng bằng lệnh TRUNCATE. Khi bạn cắt bớt một bảng, tất cả các hàng của bảng sẽ bị xóa vĩnh viễn. Dưới đây là cú pháp của lệnh này.

Cú pháp

TRUNCATE <tablename>

Thí dụ

Giả sử có một bảng được gọi là student với dữ liệu sau.

s_id tên của s_branch s_aggregate
1 ram IT 70
2 rahman EEE 75
3 robbin Mech 72

Khi bạn thực hiện câu lệnh select để lấy bảng student, nó sẽ cung cấp cho bạn kết quả sau.

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)

Bây giờ hãy cắt ngắn bảng bằng lệnh TRUNCATE.

cqlsh:tp> TRUNCATE student;

xác minh

Xác minh xem bảng có bị cắt bớt hay không bằng cách thực thi selecttuyên bố. Dưới đây là đầu ra của câu lệnh select trên bảng sinh viên sau khi cắt bớt.

cqlsh:tp> select * from student;

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

(0 rows)

Cắt bớt một bảng bằng Java API

Bạn có thể cắt bớt một bảng bằng phương thức execute () của lớp Session. Làm theo các bước dưới đây để cắt bớt một bảng.

Bước 1: Tạo một đối tượng cụm

Trước hết, hãy tạo một phiên bản của Cluster.builder lớp com.datastax.driver.core gói như hình dưới đây.

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

Thêm điểm liên hệ (địa chỉ IP của nút) bằng cách sử dụng addContactPoint() phương pháp của Cluster.Buildervật. Phương thức này trả vềCluster.Builder.

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

Sử dụng đối tượng trình tạo mới, tạo một đối tượng cụm. Để làm như vậy, bạn có một phương thức được gọi làbuild() bên trong Cluster.Builderlớp học. Đoạn mã sau đây cho thấy cách tạo một đối tượng cụm.

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

Bạn có thể xây dựng một đối tượng cụm bằng cách sử dụng một dòng mã như hình dưới đây.

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

Bước 2: Tạo đối tượng phiên

Tạo một thể hiện của đối tượng Session bằng phương thức connect () của lớp Cluster như hình bên dưới.

Session session = cluster.connect( );

Phương thức này tạo một phiên mới và khởi tạo nó. Nếu bạn đã có một keyspace, thì bạn có thể đặt nó thành keyspace hiện có bằng cách chuyển tên KeySpace ở định dạng chuỗi vào phương thức này như được hiển thị bên dưới.

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

Ở đây chúng tôi đang sử dụng không gian phím có tên tp. Do đó, hãy tạo đối tượng phiên như hình dưới đây.

Bước 3: Thực thi truy vấn

Bạn có thể thực hiện các truy vấn CQL bằng cách sử dụng phương thức execute () của lớp Session. Truyền truy vấn ở định dạng chuỗi hoặc dưới dạng đối tượng lớp Statement đến phương thức execute (). Bất cứ điều gì bạn chuyển đến phương thức này ở định dạng chuỗi sẽ được thực thi trêncqlsh.

Trong ví dụ sau, chúng tôi đang cắt bớt một bảng có tên emp. Bạn phải lưu trữ truy vấn trong một biến chuỗi và chuyển nó vàoexecute() như hình dưới đây.

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

Dưới đây là chương trình hoàn chỉnh để cắt bớt một bảng trong Cassandra bằng cách sử dụng 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");
   }
}

Lưu chương trình trên với tên lớp theo sau là .java, duyệt đến vị trí lưu nó. Biên dịch và thực thi chương trình như hình dưới đây.

$javac Truncate_Table.java
$java Truncate_Table

Trong điều kiện bình thường, nó sẽ tạo ra sản lượng sau:

Table truncated