使用update命令更改cassandra中的数据?

时间:2014-02-05 09:25:16

标签: cassandra cql

有没有办法更新Cassandra数据库以更新MySQL中的表格?   我有数据存储在cassandra中,我需要更新数据。是否有任何更新命令?

2 个答案:

答案 0 :(得分:1)

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

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

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

有关更多信息,请参阅关于他的答案中链接的UPDATE CQL命令的DataStax文档。

编辑:我不确定纯Javascript,但node-cassandra-client有一个Cassandra驱动程序(Node.js)。您可以使用该驱动程序连接到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

答案 1 :(得分:0)

希望这个link能帮助您理解Cassandra中的更新操作。