DynamoDB UPDATE(如果存在),否则为PUT-布尔值

时间:2018-09-12 13:15:41

标签: amazon-web-services amazon-dynamodb

我需要一个具有结构的表

{
userId : 123,
Tracking: true
}

第一次操作的用户可能不存在。因此,默认情况下应设置为false。下一个请求将该值设为true,第三个请求将其再次设为false,依此类推。与NOT(跟踪)类似,即对值写一个负数。

我可以通过读取表,取反lambda函数中的值并使用新属性更新表来实现。

这意味着对数据库的GET和UPDATE请求。我正在寻找一种发送否定标志的方法。这样,如果用户不存在,我只会写一个false。如果用户存在,我将根据已经存在的布尔值在true和false之间切换。

只是想知道是否有一种方法可以做到这一点。这将是对数据库的单个更新请求。任何指针都会有所帮助。

我从文档https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/DynamoDB/DocumentClient.html#update-property中找不到很多帮助

1 个答案:

答案 0 :(得分:0)

您可以使用整数代替布尔值。每次将其递增1,然后使用偶数作为true,奇数为false(或反向)