orientdb做图数据库的脚本命令

实际上,orientdb作为图数据库他的底层同样是依赖文档数据库的,本文章原本是用来讲解图数据库的,但由于还有很多陌生的命令所以先熟悉一下操作Orientdb的命令。
图数据库的图操作命令:
create class Friend extends E  //create the new  relationship "Friend" to connect people. (Edage)
create edage Friend from #11:0 to #11:2  //create the new relationship to connect #11:0 to #11:2. (@RID)
select expand( both('Friend') ) from Person where name = 'Luca'
create vertex V set name = 'Jay' //创建顶点并设置顶点的name属性为Jay
ALTER DATABASE CUSTOM useLightweightEdges=false //disable Lightweight Edage


create class Person extends V  //创建点类型的person类
create class Car extends V 创建点类型的Car
create class Owns extends E 创建边类型的Owns
create vertex Person set name = 'Luca' 创建Person并设置name属性的值
create vertex Car set name = 'Ferrari Modena' 创建Car并设置name属性的值
#create edge Owns from (select from Person) to (select from Car) 创建边的关系是从Person到Car (创建两Class所有的数据相互映射,这种产生笛卡尔积)
create edge Owns from (select from Person where name = 'Luca') to (select from Car where name = 'Ferrari Modena') 创建边的关系是从Person到Car (这种不产生笛卡尔积)
select expand( out('Owns') ) from Person where name = 'Luca'  通过点边关系查询出name为Luca对应的Car的值
select name from ( select expand( out('Owns') ) from Person where name = 'Luca' ) 查询输出顶点属性name的值
select out().name from ( select expand( out('Owns') ) from Person where name = 'Luca' ) 查询输出顶点属性name的值
select in().name from ( select expand( out('Owns') ) from Person where name = 'Luca' ) 查询输入顶点属性name的值
select @RID from ( select expand( out('Owns') ) from Person where name = 'Luca' ) 查询边@RID的值

create class Country extends V  创建Country的顶点Class
create class Lives extends E 创建lives边的Class
create vertex Country set name = 'UK' 创建并设置name属性
create edge Lives from (select from Person) to (select from Country) 创建点边关系
create property Owns.out LINK Person 创建关联Person的属性
create property Owns.in LINK Car 创建关联Car的属性

select name from ( select expand( in('Owns').out('Lives') ) from Car where name like '%Ferrari%  通过模糊匹配查询

alter property Owns.out MANDATORY=true; 
alter property Owns.in MANDATORY=true;
设置MANDATORY属性为true 可以使Owns变为轻量级的边,不会创建物理文档,(这样的做法必然需要消耗时间而减少空间)【需要验证】

create index UniqueOwns on Owns(out,in) unique 创建一个唯一索引 
 原因是因为上面创建了一种点边关系create edge Owns from (select from Person) to (select from Car)    此时应该先删除掉

delete edge Owns from #16:0 to #17:0 删除边
delete edge Owns where @rid='#18:0'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值