一、常用cqlsh 使用
1. create table 语法及注意点
(1)创建无主键table,例:create table 创建表 create table test_user(id , name text, age int , gender text) ;
InvalidRequest: Error from server: code=2200 [Invalid query] message="No PRIMARY KEY specifed (exactly one required)"
PS:创建table时必须指定主键、字段类型,否则报错。
(2)创建带主键table
create table test_user(id int primary key, name text, age int , gender text) ; --创建成功
2、insert 语法及注意点
insert into test_user (id, age, gender, name) values(1000, 28, 'f', 'zhangsan'); --插入成功
insert into test_user (id, age, gender, name) values(1000, 29, 'f', 'zhangsan'); --插入失败但会update已有数据
PS:插入数据若primary key、index在表中已存在,则cassandar 会更新已有数据,若不存在则插入成功。
3、select 语法及注意点
(1)查询条件中只包含primary key 对应的字段,则查询如下 select * from test_user where id = 1001;
PS: where 条件中只跟primary key 包含的字段则 select * from XXX where xxx = ‘XXX’ 即可查询成功。
(2)查询条件中包含primary key 对应的字段,且包含其他普通字段如“age”
PS:若查询字段中包含非primary key 字段则需要用allow filtering 进行过滤。
(3)查询非primary key 字段则需要用allow filtering 进行过滤,如下:
4、update 语法及注意点
update test_user set city = 'xian' where id=1001;
PS:primary key id =1001 在表中存在时则update成功,不存在会重新插入一条数据至表中。具体操作见如下