cql oracle,执行简单的CQL操作

CQL是Cassandra Query Language的缩写,目前作为Cassandra默认并且主要的交互接口。CQL和SQL比较类似,主要的区别是Cassandra不支持join或子查询,除了支持通过Hive进行批处理分析。要说这个Cassandra以前的接口主要是Thrift API,这个没有用过,不做评价。

一、创建keyspace

作为对照,你可以把keyspace理解成一个SQL数据库实例,当然它们毕竟是不同的:Cassandra的keyspace是用来定义数据是如何在节点间复制的。通常情况下,应该为一个应用程序建立一个keyspace。

CREATE KEYSPACE IF NOT EXISTS pimin_net

WITH REPLICATION= {‘class‘: ‘SimpleStrategy‘,‘replication_factor‘:1};

上面语句的意思是判断是否存在keyspace,如果不存在则建立keyspace;使用的复制参数是简单策略,复制因子是1。暂时先不管里面深层次的东西,我们先按照简单原则实现。

二、创建表

虽然说Cassandra是面向列的分布式数据库,但是它也有表的概念。创建之前先use pimin_net。

USE pimin_net;

CREATE TABLE users (id int,

user_name varchar,

PRIMARY KEY (id) );

这样就建立了一张用户表,为了简单起见,就只有两个字段,看起来和oracle、mysql这些是不是很像?

三、对表的CRUD

已经有了一张用户表,我们就向里面插入一些数据,对它进行查询、更新和删除操作。

INSERT INTO users (id,user_name) VALUES (1,‘china‘);

INSERT INTO users (id,user_name) VALUES (2,‘taiwan‘);

SELECT* FROM users;

结果:

cqlsh:pimin_net> SELECT *FROM users;id |user_name----+-----------(0rows)

cqlsh:pimin_net> INSERT INTO users (id,user_name) VALUES (1,‘china‘);

cqlsh:pimin_net> INSERT INTO users (id,user_name) VALUES (2,‘taiwan‘);

cqlsh:pimin_net> SELECT *FROM users;id |user_name----+-----------

1 |china2 |taiwan

(2rows)

cqlsh:pimin_net>

UPDATE users SET user_name = ‘china2014‘ WHERE id = 1;

SELECT*FROM users;

DELETE FROM users WHEREid = 1;

SELECT* FROM users;

结果:

cqlsh:pimin_net> UPDATE users SET user_name = ‘china2014‘ WHERE id = 1;

cqlsh:pimin_net> SELECT *FROM users;id |user_name----+-----------

1 |china20142 |taiwan

(2rows)

cqlsh:pimin_net> DELETE FROM users WHERE id = 1;

cqlsh:pimin_net> SELECT *FROM users;id |user_name----+-----------

2 |taiwan

(1rows)

cqlsh:pimin_net>

重要:不同于传统的RDBMS,Cassandra不能使用DELETE FROM users;这样的表达式,必须有WHERE条件!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值