simpledb:覆盖一个项目并替换所有属性

发布于 2024-11-27 14:51:19 字数 406 浏览 2 评论 0原文

如何覆盖一个项目并替换其所有属性。

例如,我有一个项目 A,具有以下属性

ItemA

AttrA = ValueA
AttrB = ValueB

现在我想使用以下属性更新 ItemA

ItemA(已更新)

AttrB = ValueB1
AttrC = ValueC

我正在使用 Java SDK。我不想删除该项目然后再创建它。目前,我正在使用 BatchPutAttributesRequest 重新创建项目,但令人惊讶的是,它不会删除更新项目中不存在的属性。

所以我最终得到 Item ItemA

AttrA

= ValueA
属性B = 值B1
属性C = 值C

How can I overwrite an item and replace all its attributes.

For eg., I have an item A, with following attributes

ItemA

AttrA = ValueA

AttrB = ValueB

now I want to update ItemA with the following attributes

ItemA(Updated)

AttrB = ValueB1

AttrC = ValueC

I am using the Java SDK. I don't want to delete the item and then create it. Currently, I am using BatchPutAttributesRequest to re-create the item but surprisingly, it doesn't delete the attributes that are not present in the updated item.

So I end up with the Item

ItemA

AttrA = ValueA

AttrB = ValueB1

AttrC = ValueC

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

再见回来 2024-12-04 14:51:19

BatchPutAttributesRequest 请求不会删除您未包含在请求中的现有属性。您需要通过指定要删除的属性列表向 Amazon SimpleDB 发送另一个请求 DeleteAttributesRequest。 BatchPutAttributesRequest 只能添加新属性或可以更新属性的现有值。

BatchPutAttributesRequest request does not delete existing Attribute that you had not included in your request. You need to send an another request DeleteAttributesRequest to Amazon SimpleDB by specifying list of Attributes that you wish to delete. BatchPutAttributesRequest can only add new Attribute or can update existing value of an attribute.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文