【问题标题】:Change the data in cassandra using update command?使用更新命令更改 cassandra 中的数据?
【发布时间】:2014-07-25 22:40:48
【问题描述】:

有没有办法像 MySQL 一样更新 Cassandra 数据库来更新表? 我有数据存储在 cassandra 中,我需要更新数据。是否有任何更新命令可以这样做?

【问题讨论】:

    标签: cassandra cql


    【解决方案1】:

    是的,您可以对数据库中的一行执行UPDATE(从 CQL shell)。但是,与 MySQL 不同的是,您只能在 WHERE 子句中指定主键。此示例假定一个名为“products”的表的主键为“productNumber”。

    UPDATE products
    SET description1='PROD DESC1'
    WHERE productNumber='ITEM00123';
    

    如果您指定的主键不存在行,则会创建一个新行。

    有关详细信息,请参阅 abhi 在其答案中链接的 UPDATE CQL 命令的 DataStax 文档。

    编辑:我不确定纯 Javascript,但 Node.js 有一个 Cassandra 驱动程序 (node-cassandra-client)。您可以使用该驱动程序连接到 Cassandra 并在 Javascript 中执行更新。以下是如何执行上述UPDATE的示例:

     var conOptions = { hosts: ['127.0.0.1:19170'],
                        keyspace: 'productKeyspace',
                        use_bigints: false };
     var con = new PooledConnection(conOptions);
     var cql = 'UPDATE products SET description1=? where productNumber=?';
     var params = ['PROD DESC1', 'ITEM00123'];
     con.execute(cql, params, function(err) {
       if (err) {
         console.log(err);
       }
       con.shutdown(callback);
     });
    

    欲了解更多信息,请查看Rackspace's doc on the node.js driver

    【讨论】:

    • 谢谢您,先生。我可以用 javascript 做同样的事情吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-04-21
    • 2017-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-23
    • 2020-01-10
    相关资源
    最近更新 更多