我一直在尝试使用 DynamoDB 映射器来创建保存表达式。我想保存一条记录
- 特定的属性值不存在。或者
- 该属性值应大于特定值。
所以我为它创建了一个表达式,但它抛出了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?提前致谢。