У меня есть функция, которая производит пары (some_key, some_value)
, которые я хочу поставить в свой DynamoDB. Если элемент с ключом some_key
уже присутствует, я хочу добавить some_value
в атрибуты value
. В противном случае я хочу создать такой элемент. Следуя примеру в the docs, кажется, что функция if_not_exists
должна делать то, что я хочу. У меня возникают проблемы с синтаксисом, потому что мой код возвращает ошибку:DynamoDB обновить счетчик (или вставить ключ)
>>>> table.update_item(
Key={
'key': my_key
},
UpdateExpression="set my_value = if_not_exist(my_value + :inc, :inc)",
ExpressionAttributeValues={
':inc': my_increment,
},
ReturnValues="UPDATED_NEW"
)
ClientError: An error occurred (ValidationException) when calling the UpdateItem operation:
Invalid UpdateExpression: Syntax error; token: "+", near: "coocc + :val"
Это, безусловно, лучший ответ! – alexcasalboni