0

我一直在尝试使用 DynamoDB 映射器来创建保存表达式。我想保存一条记录

  1. 特定的属性值不存在。或者
  2. 该属性值应大于特定值。

所以我为它创建了一个表达式,但它抛出了IllegalArgumentException.

expected.put("date",
                new ExpectedAttributeValue(new AttributeValue()
                        .withN(Long.toString(date.toEpochMilli())))
                        .withComparisonOperator(ComparisonOperator.LT));
        expected.put("date", new ExpectedAttributeValue(false));
        saveExpression.withConditionalOperator(ConditionalOperator.OR);
saveExpression.setExpected(expected);

这是我得到的那种例外。

java.lang.IllegalArgumentException: Unable to assert the value of the fields [version], since the expected value conditions cannot be combined with user-specified conditions joined by "OR"

我想知道我是否遗漏了什么或有什么问题?

编辑

看起来我不能在两个内部条件之间使用 OR 操作。是否可以以某种方式进行 OR-ing?提前致谢。

4

0 回答 0