我正在尝试通过事务对我的数据库执行更新,但我不确定需要传入什么。我已经创建和删除事务工作,但我不确定我还需要什么来获取更新在职的。
我正在查看 dynamoosejs.com 上的交易页面,我注意到更新示例中添加了一些我不认识的内容:
await dynamoose.transaction([
User.transaction.update({"id": "user1"}, {"$ADD": {"balance": -100}}),
Charge.transaction.create({"userid": "user1", "product": "product1", "amount": 100, "status": "successful"}),
Product.transaction.update({"id": "product1"}, {"$ADD": {"inventory": -1}}),
Credit.transaction.delete({"id": "credit1"}),
{
"Delete": {
"Key": {
"id": {
"S": "helloworld"
}
},
"TableName": "MyOtherTable"
}
}
]);
看起来更新的值被包装在 $ADD 下的对象中。我需要对我的更新值执行此操作吗?我是否必须知道用户如何尝试更改他们正在更新的实体的值?是否还有其他选项,例如 $UPDATE 或 $DELETE?