【问题标题】:OrientDB update query throwing exception while removing list references (rowid's)删除列表引用(rowid)时,OrientDB 更新查询抛出异常
【发布时间】:2017-03-15 09:11:35
【问题描述】:
UPDATE Student REMOVE couses = #25:183

Student 是一个包含 List 类型的 couses 字段的类。还有一个包含课程数据的表 Cousre。

当我尝试从 Student 表中删除课程 rowid 引用时,抛出以下错误:

错误:java.lang.IllegalArgumentException:参数“75”不是字符串形式的 RecordId。格式必须是:cluster-id:cluster-position

【问题讨论】:

  • 我不明白你要做什么?是否要删除顶点 Student 的字段?
  • 我在课程表中发现了具有不同时间戳的重复条目。所以我正在以编程方式删除重复的条目,并从 Student 表中删除引用。
  • orientdb版本为1.0.1,使用对象模型

标签: sql orientdb


【解决方案1】:

通常,如果我们执行任何更新操作,如果查询匹配,它应该返回大于 0 的值,或者简单地返回 0(在未找到的情况下)。这适用于某些记录,但不适用于某些记录。这可能是 orientdb 中的错误。

处理此问题的一种方法是使用特定的 rowid 执行选择,如果找到记录则只进行更新。

【讨论】:

    猜你喜欢
    • 2013-11-13
    • 2021-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-02
    • 2020-03-12
    • 1970-01-01
    • 2016-01-08
    相关资源
    最近更新 更多