第 4 步:更新表中的数据 - Amazon DynamoDB
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

第 4 步:更新表中的数据

在这一步中,更新在 第 2 步:使用控制台或 Amazon CLI 向表中写入数据 中创建的项目。可以使用 DynamoDB 控制台或 Amazon CLI,指定 ArtistSongTitle 和更新的 AlbumTitle,更新 Music 表的 AlbumTitle 项目。

有关写入操作的更多信息,请参阅 写入项目

您可以使用 DynamoDB 控制台更新 Music 表的数据。

  1. 打开 DynamoDB 控制台:https://console.aws.amazon.com/dynamodb/

  2. 在左侧导航窗格中,选择

  3. 从表列表中选择 Music 表。

  4. 选择 Explore table items(浏览表项目)。

  5. 返回的项目中,对于 ArtistAcme Band 并且 SongTitleHappy Day 的项目行,执行以下操作:

    1. 将光标放在名为 Songs About LifeAlbumTitle 上。

    2. 选择“编辑”图标。

    3. 编辑字符串弹出窗口中,输入 Songs of Twilight

    4. 选择保存

    提示

    或者,要更新项目,请在返回的项目部分中执行以下操作:

    1. 选择名为 Acme BandArtist 并且 SongTitleHappy Day 的项目行。

    2. 操作下拉列表中,选择编辑项目

    3. 对于 AlbumTitle,输入 Songs of Twilight

    4. 选择保存并关闭

下面的 Amazon CLI 示例更新 Music 表的项目。您可以通过 DynamoDB API 或 PartiQL(一种适用于 DynamoDB 的 SQL 兼容查询语言)执行此操作。

DynamoDB API

Linux

aws dynamodb update-item \ --table-name Music \ --key '{ "Artist": {"S": "Acme Band"}, "SongTitle": {"S": "Happy Day"}}' \ --update-expression "SET AlbumTitle = :newval" \ --expression-attribute-values '{":newval":{"S":"Updated Album Title"}}' \ --return-values ALL_NEW

Windows CMD

aws dynamodb update-item ^ --table-name Music ^ --key "{\"Artist\": {\"S\": \"Acme Band\"}, \"SongTitle\": {\"S\": \"Happy Day\"}}" ^ --update-expression "SET AlbumTitle = :newval" ^ --expression-attribute-values "{\":newval\":{\"S\":\"Updated Album Title\"}}" ^ --return-values ALL_NEW

使用 update-item 将返回以下示例结果,因为已指定 return-values ALL_NEW

{ "Attributes": { "AlbumTitle": { "S": "Updated Album Title" }, "Awards": { "S": "10" }, "Artist": { "S": "Acme Band" }, "SongTitle": { "S": "Happy Day" } } }
PartiQL for DynamoDB

Linux

aws dynamodb execute-statement --statement "UPDATE Music \ SET AlbumTitle='Updated Album Title' \ WHERE Artist='Acme Band' AND SongTitle='Happy Day' \ RETURNING ALL NEW *"

Windows CMD

aws dynamodb execute-statement --statement "UPDATE Music SET AlbumTitle='Updated Album Title' WHERE Artist='Acme Band' AND SongTitle='Happy Day' RETURNING ALL NEW *"

使用 Update 语句将返回以下示例结果,因为已指定 RETURNING ALL NEW *

{ "Items": [ { "AlbumTitle": { "S": "Updated Album Title" }, "Awards": { "S": "10" }, "Artist": { "S": "Acme Band" }, "SongTitle": { "S": "Happy Day" } } ] }

有关使用 PartiQL 更新数据的更多信息,请参阅 PartiQL 更新语句

要查询 Music 表的数据,继续 第 5 步:查表中的数据