Cassandra - Veri Oluştur

Bir Tabloda Veri Oluşturma

Komutu kullanarak tablodaki bir satırın sütunlarına veri ekleyebilirsiniz. INSERT. Aşağıda, bir tabloda veri oluşturmak için sözdizimi verilmiştir.

INSERT INTO <tablename>
(<column1 name>, <column2 name>....)
VALUES (<value1>, <value2>....)
USING <option>

Misal

Diyelim ki adında bir tablo var emp sütunlarla (emp_id, emp_name, emp_city, emp_phone, emp_sal) ve aşağıdaki verileri emp tablo.

emp_id emp_name emp_city emp_phone emp_sal
1 Veri deposu Haydarabad 9848022338 50000
2 Robin Haydarabad 9848022339 40000
3 rahman Chennai 9848022330 45.000

Tabloyu gerekli verilerle doldurmak için aşağıda verilen komutları kullanın.

cqlsh:tutorialspoint> INSERT INTO emp (emp_id, emp_name, emp_city,
   emp_phone, emp_sal) VALUES(1,'ram', 'Hyderabad', 9848022338, 50000);

cqlsh:tutorialspoint> INSERT INTO emp (emp_id, emp_name, emp_city,
   emp_phone, emp_sal) VALUES(2,'robin', 'Hyderabad', 9848022339, 40000);

cqlsh:tutorialspoint> INSERT INTO emp (emp_id, emp_name, emp_city,
   emp_phone, emp_sal) VALUES(3,'rahman', 'Chennai', 9848022330, 45000);

Doğrulama

Verileri ekledikten sonra, verilerin eklenip eklenmediğini doğrulamak için SELECT deyimini kullanın. Emp tabloyu SELECT deyimini kullanarak doğrularsanız, size aşağıdaki çıktıyı verecektir.

cqlsh:tutorialspoint> SELECT * FROM emp;

 emp_id |  emp_city | emp_name |  emp_phone | emp_sal
--------+-----------+----------+------------+---------
      1 | Hyderabad |      ram | 9848022338 | 50000
      2 | Hyderabad |    robin | 9848022339 | 40000
      3 |   Chennai |   rahman | 9848022330 | 45000
 
(3 rows)

Burada, tablonun eklediğimiz verilerle doldurulduğunu gözlemleyebilirsiniz.

Java API kullanarak Veri Oluşturma

Session sınıfının execute () yöntemini kullanarak bir tabloda veri oluşturabilirsiniz. Java API kullanarak bir tabloda veri oluşturmak için aşağıda verilen adımları izleyin.

Adım 1: Küme Nesnesi Oluşturun

Bir örnek oluşturun Cluster.builder sınıfı com.datastax.driver.core aşağıda gösterildiği gibi paketleyin.

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

Kullanarak bir iletişim noktası (düğümün IP adresi) ekleyin. addContactPoint() yöntemi Cluster.Buildernesne. Bu yöntem döndürürCluster.Builder.

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

Yeni oluşturucu nesnesini kullanarak bir küme nesnesi oluşturun. Bunu yapmak için adında bir yönteminiz varbuild() içinde Cluster.Buildersınıf. Aşağıdaki kod, bir küme nesnesinin nasıl oluşturulacağını gösterir.

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

Aşağıda gösterildiği gibi tek bir kod satırı kullanarak bir küme nesnesi oluşturabilirsiniz.

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

Adım 2: Bir Oturum Nesnesi Oluşturun

Aşağıda gösterildiği gibi Cluster sınıfının connect () yöntemini kullanarak Session nesnesinin bir örneğini oluşturun.

Session session = cluster.connect( );

Bu yöntem yeni bir oturum oluşturur ve onu başlatır. Zaten bir anahtar alanınız varsa, aşağıda gösterildiği gibi bu yönteme dize biçiminde KeySpace adını ileterek var olana ayarlayabilirsiniz.

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

Burada adı verilen KeySpace'i kullanıyoruz tp. Bu nedenle, aşağıda gösterildiği gibi oturum nesnesini oluşturun.

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

3. Adım: Sorguyu Çalıştırın

Session sınıfının execute () yöntemini kullanarak CQL sorgularını yürütebilirsiniz. Sorguyu dize biçiminde veya birStatementexecute () yöntemine sınıf nesnesi. Bu yönteme dize biçiminde ilettiğiniz her şey,cqlsh.

Aşağıdaki örnekte, adı verilen bir tabloya veri ekliyoruz emp. Sorguyu bir dize değişkeninde saklamanız ve aşağıda gösterildiği gibi execute () yöntemine iletmeniz gerekir.

String query1 = “INSERT INTO emp (emp_id, emp_name, emp_city, emp_phone, emp_sal)
   VALUES(1,'ram', 'Hyderabad', 9848022338, 50000);” ;
 
String query2 = “INSERT INTO emp (emp_id, emp_name, emp_city, emp_phone, emp_sal)
   VALUES(2,'robin', 'Hyderabad', 9848022339, 40000);” ;
 
String query3 = “INSERT INTO emp (emp_id, emp_name, emp_city, emp_phone, emp_sal)
   VALUES(3,'rahman', 'Chennai', 9848022330, 45000);” ;
 
session.execute(query1);
session.execute(query2);
session.execute(query3);

Aşağıda, Java API kullanarak Cassandra'da bir tabloya veri eklemek için eksiksiz bir program verilmiştir.

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

public class Create_Data {

   public static void main(String args[]){

      //queries
      String query1 = "INSERT INTO emp (emp_id, emp_name, emp_city, emp_phone,  emp_sal)"
		
         + " VALUES(1,'ram', 'Hyderabad', 9848022338, 50000);" ;
                             
      String query2 = "INSERT INTO emp (emp_id, emp_name, emp_city,
         emp_phone, emp_sal)"
      
         + " VALUES(2,'robin', 'Hyderabad', 9848022339, 40000);" ;
                             
      String query3 = "INSERT INTO emp (emp_id, emp_name, emp_city, emp_phone, emp_sal)"
       
         + " VALUES(3,'rahman', 'Chennai', 9848022330, 45000);" ;

      //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(query1);
        
      session.execute(query2);
        
      session.execute(query3);
        
      System.out.println("Data created");
   }
}

Yukarıdaki programı sınıf adı ve ardından .java ile kaydedin, kaydedildiği konuma göz atın. Programı aşağıda gösterildiği gibi derleyin ve çalıştırın.

$javac Create_Data.java
$java Create_Data

Normal koşullar altında, aşağıdaki çıktıyı üretmelidir -

Data created