基础命令
./console.sh 启动客户端
help 查看帮助
connect remote:localhost root someUglyPassword
链接
(例如:connect remote:orientdb01:2424 root 123456)
(例如:connect remote:orientdb01:2424/orion root 123456 【备注:这种方式是直接链接指定的orion数据库】)
list databases 查看有多少个数据库
经过查询资料orientdb没有类似mysql的use databasename的语法 (只能用connect remote:orientdb01:2424/orion root 123456)
classes 查看一个类中的属性【注:在orientdb中class类似关系型数据库中的表】
create class student 创建一个student类
create property student.name string 创建一个学生的用户名属性类型为string (每个property是有id的也就是有顺序的)
info class student 查看class的信息
alter property Student.name min 3 修改属性的信息,指定name属性最少有三个字符
browse class student 查看这个类中所有记录
display record 0 显示第一行记录的信息
select * from clusername:student 查询的时候带上集群的名称可以让查询不至于全集群的方式去扫描
ALTER CLASS customer ADDCLUSTER usa_customer 在customer类下添加usa_customer
进入指定的库 输入命令:clusters 查看到所有的class对应的服务器(可以查看到所有的集群)
browse cluster OUser 查看user类所在集群
存储原理相关命令
OrientDB可以设置成持久化存储也可以作为内存存储
在orientdb中每个记录都有独立的存储标识@RID,标识的内容包括两个部分:
cluster-id和cluster-position
例如:刚刚用browse cluster OUser查出来的user用户的@RID为#5:0
load record #5:0 这样就可以查询出对应位置的数据信息。
SQL语句
1,查询语句
select from student 查询语句【注意这里没有*号(经过测试加上*也没事,结果一样),在这里查询是针对student这个类的】
通过 browse class student 查看student的@RID 这样就可以通过@RID来查询对应的类
select from #5:0 针对单个类的单个属性查询
select from [#5:0, #5:1, #5:2] 针对单个类的多个属性查询。和select from student 的查询结果一样
为了能够让查询数据是不至于全集群扫描可以查找的时候指定集群的名称 例如:
select from cluster1:student 指定了cluster1服务器的student表
select from OUser where name like 'a%' 模糊匹配
select from OUser where name='admin' 等值条件查询
select from student where gender=1 order by name asc,sid asc 筛选过滤并排序【注意:经过测试验证orientdb使用排序的话速度极慢】
select from student where sid < '2016112101' 范围条件查询
select from student where gender=1 group by out_orion_e 分组查询
select from student skip 10 limit 5 分页查询
2,更新写入语句
写入语句:第一种写法:
insert into student (name, surname, gender) values ('Jay', 'Miner', 'M')
第二种写法:
insert into
student
set name = 'Jay', surname = 'Miner', gender = 'M'
第三种写法:insert into student content {name : 'Jay', surname : 'Miner', gender : 'M'}
update student
set name= 'zhangsan' where sid = '2016112101' 更新语句(也可以用:
update Employee merge { name: 'zhangsan'} where sid = '2016112101'
)
3,删除语句
delete from student where sid = '2016112101'