Cassandra – Actualizar datos

Actualizar datos en una tabla

ACTUALIZAR este es el comando que se utiliza para actualizar los datos en una tabla. Las siguientes palabras clave se utilizan al actualizar datos en una tabla:

  • Dónde – Esta oración se usa para seleccionar una fila para actualizar.

  • Colocar – Establezca el valor con esta palabra clave.

  • Deber – Incluye todas las columnas que componen la clave principal.

Al actualizar filas, si la fila dada no está disponible, ACTUALIZAR crea una nueva fila. A continuación se muestra la sintaxis del comando UPDATE:

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

Ejemplo

Suponga que hay una tabla llamada emp… Esta tabla almacena datos sobre los empleados de una empresa en particular y contiene los siguientes datos:

emp_id emp_name emp_city emp_phone emp_sal
uno RAM Hyderabad 9848022338 50.000
2 Robin Hyderabad 9848022339 40.000
3 Rahman Chennai 9848022330 45000

Actualicemos ahora la emp_city de Robin a Delhi y su salario a 50 000. A continuación se muestra una consulta para realizar las actualizaciones necesarias.

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

Controlar

Use una instrucción SELECT para verificar si los datos se han actualizado o no. Si inspecciona la tabla emp con una instrucción SELECT, produce el siguiente resultado.

cqlsh:AreaTutorial> 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)

Aquí puede ver que los datos de la tabla se han actualizado.

Actualización de datos mediante la API de Java

Puede actualizar los datos en la tabla usando el método execute () de la clase Session. Siga los pasos que se indican a continuación para actualizar los datos en una tabla utilizando la API de Java.

Paso 1. Cree un objeto de clúster.

Crea una instancia Cluster.builder clase com.datastax.driver.core paquete de la siguiente manera.

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

Agregue un punto de contacto (IP de host) usando addContactPoint () método Cluster.Builder un objeto. Este método devuelve Cluster.Builder

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

Con el nuevo objeto generador, cree un objeto de clúster. Para hacer esto, tienes un método llamado construir() en Cluster.Builder clase. Utilice el siguiente código para crear un objeto de clúster.

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

Puede crear un objeto de clúster utilizando una línea de código como se muestra a continuación.

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

Paso 2. Crea un objeto de sesión

Cree una instancia del objeto Session utilizando el método connect () de la clase Cluster como se muestra a continuación.

Session session = cluster.connect( );

Este método crea una nueva sesión y la inicializa. Si ya tiene un espacio de claves, puede establecerlo en uno existente pasando el nombre del espacio de claves en formato de cadena a este método como se muestra a continuación.

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

Aquí estamos usando KeySpace llamado tp… Por lo tanto, cree un objeto de sesión como se muestra a continuación.

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

Paso 3: ejecutar la solicitud

Puede ejecutar consultas CQL utilizando el método execute () de la clase Session. Pase la solicitud en formato de cadena o como un objeto de la clase Statement al método execute (). Todo lo que pase a este método en formato de cadena se ejecutará en cqlsh

En el siguiente ejemplo, estamos actualizando la tabla emp. Debe almacenar la solicitud en una variable de cadena y pasarla al método execute () como se muestra a continuación:

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

A continuación se muestra un programa completo para actualizar datos en una tabla usando la API de Java.

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

Guarde el programa anterior con el nombre de la clase seguido de.java, navegue hasta la ubicación donde está guardado. Compile y ejecute el programa como se muestra a continuación.

$javac Update_Data.java
$java Update_Data

En condiciones normales, debería producir el siguiente resultado:

Data updated

🚫