Cassandra 教程

Cassandra键空间操作

Cassandra表操作

Cassandra数据CRUD操作

Cassandra CQL数据类型

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/cql-update-data.html

Cassandra更新数据


UPDATE 命令用于更新 Cassandra 表中的数据。如果在更新数据后看不到任何结果,则表示数据成功更新,否则将返回错误。在更新 Cassandra 表中的数据时,通常使用以下关键字:

  • Where:WHERE 子句用于选择要更新的行。
  • Set:SET 子句用于设置值。
  • Must:它用于包括构成主键的所有列。

语法:

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

又或者 -

Update KeyspaceName.TableName   
Set ColumnName1=new Column1Value,  
      ColumnName2=new Column2Value,  
      ColumnName3=new Column3Value,  
       .  
       .  
       .  
Where ColumnName=ColumnValue

注意:使用 UPDATE 命令并且给定的行可用时,UPDATE 会创建一个新行。

示例:

我们举个例子来演示如何更新 Cassandra 表中的数据。我们有一个名为“student”的表,其中列(student_idstudent_feesstudent_name)具有以下数据:

cqlsh:yiibai_ks> SELECT * FROM student;

 student_id | student_fees | student_name
------------+--------------+--------------
          1 |         5000 |        Maxsu
          2 |         3000 |        Minsu
          3 |         2000 |       Modlee

(3 rows)
cqlsh:yiibai_ks>

在这里,我们将student_id2记录的student_fees的值更新为10000student_name更新为XunWang

UPDATE student SET student_fees=10000,student_name='XunWang' WHERE student_id=2;

在执行上面语句之后,表已更新。您可以使用 SELECT 命令验证它。

SELECT * FROM student;

执行结果如下 -

cqlsh:yiibai_ks> SELECT * FROM student;

 student_id | student_fees | student_name
------------+--------------+--------------
          1 |         5000 |        Maxsu
          2 |         3000 |        Minsu
          3 |         2000 |       Modlee

(3 rows)
cqlsh:yiibai_ks> UPDATE student SET student_fees=10000,student_name='XunWang' WHERE student_id=2;
cqlsh:yiibai_ks> SELECT * FROM student;

 student_id | student_fees | student_name
------------+--------------+--------------
          1 |         5000 |        Maxsu
          2 |        10000 |      XunWang
          3 |         2000 |       Modlee

(3 rows)
cqlsh:yiibai_ks>