[英]How create edges right after vertex insertion in one SQL query in OrientDB?
I have created vertex class Person and edge class friends.我创建了顶点类 Person 和边类朋友。 After insertion in class Person the query result returns @rid and some kind of other data or properties etc.在类 Person 插入后,查询结果返回 @rid 和某种其他数据或属性等。
and I want to use this @rid for creating edges between vertices.我想使用这个@rid 在顶点之间创建边。 I want to implement something like:我想实现类似的东西:
create edge friends
from (insert into person (name) values("John"))
to (insert into person (name) values("Ann"))
so that I should be able to create edge immediately in one query.这样我就可以在一个查询中立即创建边缘。
I am inserting batch data with prepared statement, that's why I can't get @rid after insertion, and because of that I want to make it in one query.我正在使用准备好的语句插入批处理数据,这就是为什么在插入后无法获得 @rid 的原因,因此我想在一个查询中生成它。 I suppose it would be faster as well.我想它也会更快。
How to do that?怎么做?
You can use batch scripts and LET statements:您可以使用批处理脚本和 LET 语句:
LET $alice = insert into person (name) values("Alice");
LET $bob = insert into person (name) values("Bob");
LET $charlie = insert into person (name) values("Charlie");
create edge friends from $alice to $bob;
create edge friends from $bob to $charlie;
If you do it from Studio, make sure you select the BATCH mode.如果从 Studio 执行此操作,请确保选择 BATCH 模式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.