कैसेंड्रा - अपडेट डेटा

तालिका में डेटा अपडेट करना

UPDATEतालिका में डेटा को अपडेट करने के लिए कमांड का उपयोग किया जाता है। तालिका में डेटा अपडेट करते समय निम्नलिखित कीवर्ड का उपयोग किया जाता है -

  • Where - इस क्लॉज का उपयोग अपडेट की जाने वाली पंक्ति को चुनने के लिए किया जाता है।

  • Set - इस कीवर्ड का उपयोग करके मान सेट करें।

  • Must - प्राथमिक कुंजी की रचना करने वाले सभी कॉलम शामिल हैं।

पंक्तियों को अद्यतन करते समय, यदि दी गई पंक्ति अनुपलब्ध है, तो UPDATE एक नई पंक्ति बनाता है। नीचे UPDATE कमांड का सिंटैक्स दिया गया है -

UPDATE <tablename>
SET <column name> = <new value>
<column name> = <value>....
WHERE <condition>

उदाहरण

मान लें कि नाम की एक तालिका है emp। यह तालिका एक निश्चित कंपनी के कर्मचारियों के विवरण को संग्रहीत करती है, और इसके निम्नलिखित विवरण हैं -

emp_id emp_name emp_city emp_phone emp_sal
1 राम हैदराबाद 9848022338 50000
2 रोबिन हैदराबाद 9848022339 40000
3 रहमान चेन्नई 9848022330 45,000

आइए अब हम रॉबिन के एम्पायरिटी को दिल्ली और उसके वेतन को 50000 पर अपडेट करते हैं। आवश्यक अपडेट करने के लिए नीचे दिए गए प्रश्न हैं।

cqlsh:tutorialspoint> UPDATE emp SET emp_city='Delhi',emp_sal=50000
   WHERE emp_id=2;

सत्यापन

यह सत्यापित करने के लिए कि डेटा अपडेट किया गया है या नहीं, SELECT स्टेटमेंट का उपयोग करें। यदि आप SELECT स्टेटमेंट का उपयोग करके एम्प टेबल को सत्यापित करते हैं, तो यह निम्नलिखित आउटपुट का उत्पादन करेगा।

cqlsh:tutorialspoint> select * from emp;

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

यहां आप देख सकते हैं कि टेबल डेटा अपडेट हो गया है।

जावा एपीआई का उपयोग कर डेटा को अपडेट करना

आप सत्र वर्ग के निष्पादन () पद्धति का उपयोग करके किसी तालिका में डेटा अपडेट कर सकते हैं। जावा एपीआई का उपयोग करके तालिका में डेटा अपडेट करने के लिए नीचे दिए गए चरणों का पालन करें।

Step1: एक क्लस्टर ऑब्जेक्ट बनाएँ

का एक उदाहरण बनाएँ Cluster.builder की कक्षा com.datastax.driver.core पैकेज के रूप में नीचे दिखाया गया है।

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

का उपयोग करके एक संपर्क बिंदु (नोड का आईपी पता) जोड़ें 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 session = cluster.connect( );

यह विधि एक नया सत्र बनाती है और इसे आरंभ करती है। यदि आपके पास पहले से ही एक कीस्पेस है, तो आप इसे नीचे दिखाए गए अनुसार स्ट्रिंग विधि में कीस्पेस नाम से पास करके इसे मौजूदा एक पर सेट कर सकते हैं।

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

यहां हम नाम के कीस्पेस का उपयोग कर रहे हैं tp। इसलिए, नीचे दिखाए अनुसार सत्र ऑब्जेक्ट बनाएं।

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

चरण 3: क्वेरी को निष्पादित करें

आप सत्र वर्ग के निष्पादन () विधि का उपयोग करके CQL प्रश्नों को निष्पादित कर सकते हैं। क्वेरी को स्ट्रिंग प्रारूप में या निष्पादन क्लास () विधि के लिए स्टेटमेंट क्लास ऑब्जेक्ट के रूप में पास करें। आप स्ट्रिंग प्रारूप में इस पद्धति से जो भी पास करेंगे, उस पर अमल किया जाएगाcqlsh

निम्नलिखित उदाहरण में, हम एम्पायर टेबल को अपडेट कर रहे हैं। आपको क्वेरी को एक स्ट्रिंग चर में संग्रहीत करना होगा और इसे नीचे दिए गए अनुसार निष्पादित () विधि से करना होगा:

String query = “ UPDATE emp SET emp_city='Delhi',emp_sal=50000
WHERE emp_id = 2;” ;

नीचे दिए गए जावा एपीआई का उपयोग करके तालिका में डेटा अपडेट करने का पूरा कार्यक्रम है।

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

public class Update_Data {
  
   public static void main(String args[]){
      
      //query
      String query = " UPDATE emp SET emp_city='Delhi',emp_sal=50000"
          
      //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("Data updated");
   }
 }

उपरोक्त प्रोग्राम को .java के बाद वाले वर्ग नाम से सहेजें, उस स्थान पर ब्राउज़ करें जहाँ इसे सहेजा गया है। नीचे दिखाए अनुसार कार्यक्रम को संकलित और निष्पादित करें।

$javac Update_Data.java
$java Update_Data

सामान्य परिस्थितियों में, इसे निम्न आउटपुट का उत्पादन करना चाहिए -

Data updated