从 OrientDB 中的函数嵌入记录 [英] Embedding record from function in OrientDB
本文介绍了从 OrientDB 中的函数嵌入记录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想使用 OrientDB 中的函数将一条记录嵌入到另一条记录中.
I'd like to embed a record into another one using a function in OrientDB.
我有一个叫做备份的类.这是它的定义:
I have a class called Backup. Here's it's definition:
create class Backup extends V
create property Backup.dateTime datetime
create property Backup.record embedded V
我想要做的是调用一个 OrientDB 函数,向它传递一个任意的 @rid,它会为我备份那个记录.这是我到目前为止尝试过的:
What I want to do is to call an OrientDB function, passing it an arbitrary @rid, and it will make a backup of that record for me. Here's what I tried so far:
//function createBackup(id)
var gdb = orient.getGraphNoTx();
var rec = gdb.command("sql", "select from V where @rid = ?", [id]);
var v = gdb.command("sql", "create vertex Backup set dateTime = ?, record = ?", [(new Date().getTime()), rec[0].getRecord().toJSON()]);
...
尝试使用 rec[0]
或 rec[0].getRecord()
代替,但函数总是向我抛出错误.有什么想法吗?
Tried using rec[0]
, or rec[0].getRecord()
instead, but function always throws an error at me. Any ideas?
推荐答案
OrientDB - v2.0.6
var graph = orient.getGraphNoTx();
var query = "select @this.exclude('@rid').toJson() as json from V where @rid = " + id;
var result = graph.command("sql", query);
var command = "create vertex Backup "
+ "set dateTime = " + new Date().getTime() + ", "
+ " record = " + result[0].getRecord().field('json');
graph.command("sql", command);
return;
这篇关于从 OrientDB 中的函数嵌入记录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文