在OrientDB中嵌入函数的记录

时间:2015-04-08 13:05:40

标签: javascript orientdb

我想使用OrientDB中的函数将记录嵌入到另一个记录中。

我有一个名为Backup的课程。以下是它的定义:

create class Backup extends V
create property Backup.dateTime datetime
create property Backup.record embedded V

我想要做的是调用OrientDB函数,传递一个任意的@rid,它将为我备份该记录。这是我到目前为止所做的:

//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()代替,但函数总是向我抛出错误。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

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;