如何从 OrientDb 获取新插入的@rid?

How to get newly inserted @rid from OrientDb?

我有像这样的简单函数(javascript 语言)。

var db = orient.getDatabase();
var result = db.command("Insert into Counter (Name, Value) values('Test1',0)");

如何从 result 变量中获取新的@rid? 我试过这样

return result[0].field('@rid');

但是没用。

我按照以下步骤尝试了您的案例:

结构:

CREATE CLASS Counter

CREATE PROPERTY Counter.Name STRING
CREATE PROPERTY Counter.Value INTEGER

要检索刚刚插入的记录 @rid 通过使用 Javascript 函数 你可以改变你的函数这样:

JS函数:

var db = orient.getDatabase();

var result = db.command("Insert into Counter (Name, Value) values('Test1',0)");

return result.getRecord().field('@rid').toString();

输出:

[
    {
        "@type": "d",
        "@version": 0,
        "value": "#12:0"
    }
]

工作室:

希望对您有所帮助