在 `DELETE VERTEX v;` 之后,我该如何重置 RecordId?

After `DELETE VERTEX v;` how do I reset the RecordId?

执行DELETE VERTEX v;从oriendb数据库中删除所有记录后,如何重置RecordId(@rid)重新开始?

我想 运行 测试所以在删除所有记录后我再次播种记录;我测试了一条特定的记录#13:3,但在拆除后它发生了变化。再次播种数据库时不是#13:3。

我创建了这个简单的结构来尝试你的案例:

create property V.id integer

create vertex V set id = 1
create vertex V set id = 2
create vertex V set id = 3
create vertex V set id = 4
create vertex V set id = 5

现在 class V 有这个 rids 和记录:

select from V

----+----+------+----
#   |@RID|@CLASS|id
----+----+------+----
0   |#9:0|V     |1
1   |#9:1|V     |2
2   |#9:2|V     |3
3   |#9:3|V     |4
4   |#9:4|V     |5
----+----+------+----

但是如果你执行命令

truncate class V unsafe

Truncated 5 record(s) in 0,016000 sec(s).

classV 中的所有记录将被删除(而不是手动删除它们)并且@rids 将被重置。现在,如果您执行新的 create vertex V set id = 1 命令,@rid #9:0 将被重新分配给第一个重新插入的记录。下面是重新插入的例子:

create vertex V set id = 1

Created vertex 'V#9:0{id:1} v1' in 0,015000 sec(s).

现在,如果您查询 class V,您将看到 @rid #9:0 重新分配

select from V

----+----+------+----
#   |@RID|@CLASS|id
----+----+------+----
0   |#9:0|V     |1
----+----+------+----

希望对您有所帮助