

# 生成 API 操作
<a name="workbench.querybuilder.operationbuilder.api"></a>

要使用 NoSQL Workbench 生成 DynamoDB CRUD API，请选择 NoSQL Workbench 用户界面左侧的**操作生成器**。

然后选择**打开**并选择一个连接。

您可以在操作生成器中执行以下操作：
+ [删除表](#workbench.querybuilder.operationbuilder.DeleteTable)
+ [创建表](#workbench.querybuilder.operationbuilder.CreateTable)
+ [更新表](#workbench.querybuilder.operationbuilder.UpdateTable)
+ [放置项目](#workbench.querybuilder.operationbuilder.Put)
+ [更新项目](#workbench.querybuilder.operationbuilder.update)
+ [删除项目](#workbench.querybuilder.operationbuilder.Delete)
+ [Query](#workbench.querybuilder.operationbuilder.Query)
+ [Scan](#workbench.querybuilder.operationbuilder.scan)
+ [事务处理获取项目](#workbench.querybuilder.operationbuilder.transactget)
+ [事务处理写入项目](#workbench.querybuilder.operationbuilder.transactwrite)

## 删除表
<a name="workbench.querybuilder.operationbuilder.DeleteTable"></a>

要运行 `Delete Table` 操作，请完成以下步骤。

1. 在**表**部分中找到要删除的表。

1. 从水平省略号菜单中选择**删除表**。

1. 输入**表名称**来确认您要删除该表。

1. 选择**删除**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[删除表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteTable.html)。

## 删除 GSI
<a name="workbench.querybuilder.operationbuilder.DeleteGSI"></a>

要运行 `Delete GSI` 操作，请完成以下步骤。

1. 在**表**部分中找到要删除的表的 GSI。

1. 从水平省略号菜单中选择**删除 GSI**。

1. 输入 **GSI 名称**来确认您要删除该 GSI。

1. 选择**删除**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[删除表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteTable.html)。

## 创建表
<a name="workbench.querybuilder.operationbuilder.CreateTable"></a>

要运行 `Create Table` 操作，请完成以下步骤。

1. 选择**表**部分旁边的 **\$1** 图标。

1. 输入所需的表名称。

1. 创建分区键。

1. 可选：创建排序键。

1. 要自定义容量设置，请取消选中**使用默认容量设置**旁边的复选框。
   + 现在，您可以选择**已预置**或**按需容量**。

     选中“已预置”后，您可以设置最小和最大读取和写入容量单位。您还可以启用或禁用自动扩缩。
   + 如果表当前设置为“按需”，您将无法指定预置吞吐量。
   + 如果您从“按需”切换到“已预置”吞吐量，则自动扩缩将自动应用于所有 GSI，其中，最小值：1，最大值：10；目标：70%。

1. 选择**跳过 GSI 并创建**可创建此表而不创建 GSI。或者，您可以选择**下一步**以创建 GSI 以及此新表。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[创建表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html)。

## 创建 GSI
<a name="workbench.querybuilder.operationbuilder.CreateGSI"></a>

要运行 `Create GSI` 操作，请完成以下步骤。

1. 找到要添加 GSI 的表。

1. 从水平省略号菜单中，选择**创建 GSI**。

1. 在**索引名称**下为 GSI 命名。

1. 创建分区键。

1. 可选：创建排序键。

1. 从下拉列表中选择投影类型选项。

1. 选择**创建 GSI**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[创建表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html)。

## 更新表
<a name="workbench.querybuilder.operationbuilder.UpdateTable"></a>

要使用 `Update Table` 操作更新表的容量设置，请执行以下步骤。

1. 找到您要更新容量设置的表。

1. 从水平省略号菜单中，选择**更新容量设置**。

1. 选择**已预置**或**按需容量**。

   选中**已预置**后，您可以设置最小和最大读取和写入容量单位。您还可以启用或禁用自动扩缩。

1. 选择**更新**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[更新表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html)。

## 更新 GSI
<a name="workbench.querybuilder.operationbuilder.UpdateGSI"></a>

要使用 `Update Table` 操作更新 GSI 的容量设置，请执行以下步骤。

**注意**  
默认情况下，全局二级索引继承基表的容量设置。仅当基表采用已预置容量模式时，各个全局二级索引才能具有不同的容量模式。在预置模式表创建全局二级索引时，必须根据该索引的预期工作负载指定读取和写入容量单位。有关更多信息，请参阅 [全局二级索引的预调配吞吐量注意事项](GSI.md#GSI.ThroughputConsiderations)。

1. 找到您要更新容量设置的 GSI。

1. 从水平省略号菜单中，选择**更新容量设置**。

1. 现在，您可以选择**已预置**或**按需容量**。

   选中**已预置**后，您可以设置最小和最大读取和写入容量单位。您还可以启用或禁用自动扩缩。

1. 选择**更新**。

有关此操作的更多信息，请参阅《Amazon DynamoDB API 参考》**中的[更新表](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html)。

## 放置项目
<a name="workbench.querybuilder.operationbuilder.Put"></a>

您可以使用 `Put Item` 操作创建项目。要为 `Put Item` 操作执行或生成代码，请执行以下操作。

1. 找到您要在其中创建项目的表。

1. 从**操作**下拉列表中，选择**创建项目**。

1. 输入分区键值。

1. 输入排序键值（如果存在）。

1. 如果要添加非键属性，请执行以下操作：

   1. 选择 **\$1 添加其他属性**。

   1. 指定**属性名称**、**类型**和**值**。

1. 如果必须满足条件表达式 `Put Item` 操作才能成功，请执行以下操作：

   1. 选择**条件**。

   1. 指定属性名称、比较运算符、属性类型和属性值。

   1. 如果需要其他条件，请再次选择**条件**。

   有关更多信息，请参阅 [DynamoDB 条件表达式 CLI 示例](Expressions.ConditionExpressions.md)。

1. 如果要生成代码，请选择**生成代码**。

   从显示的选项卡中选择所需的语言。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**，然后输入操作的名称，选择**保存**。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [PutItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html)。

## 更新项目
<a name="workbench.querybuilder.operationbuilder.update"></a>

要为 `Update Item` 操作执行或生成代码，请执行以下操作：

1. 找到您要在其中更新项目的表。

1. 选择项目。

1. 输入选定表达式的属性名称和属性值。

1. 如果要添加更多表达式，请在**更新表达式**下拉列表中选择另一个表达式，然后选择 **\$1** 图标。

1. 如果必须满足条件表达式 `Update Item` 操作才能成功，请执行以下操作：

   1. 选择**条件**。

   1. 指定属性名称、比较运算符、属性类型和属性值。

   1. 如果需要其他条件，请再次选择**条件**。

   有关更多信息，请参阅 [DynamoDB 条件表达式 CLI 示例](Expressions.ConditionExpressions.md)。

1. 如果要生成代码，请选择**生成代码**。

   选择所需语言的选项卡。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**，然后输入操作的名称，选择**保存**。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [UpdateItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html)。

## 删除项目
<a name="workbench.querybuilder.operationbuilder.Delete"></a>

要运行 `Delete Item` 操作，请完成以下步骤。

1. 找到您要从中删除项目的表。

1. 选择项目。

1. 从**操作**下拉列表中，选择**删除项目**。

1. 选择**删除**以确认您要删除相应项目。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [DeleteItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html)。

## 重复项目
<a name="workbench.querybuilder.operationbuilder.Duplicate"></a>

您可以创建一个具有相同属性的新项目，从而复制项目。要复制项目，请执行以下操作。

1. 找到您要在其中复制项目的表。

1. 选择项目。

1. 从**操作**下拉列表中，选择**重复项目**。

1. 指定新的分区键。

1. 指定新的排序键（如果需要）。

1. 选择**运行**。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [DeleteItem](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html)。

## 查询
<a name="workbench.querybuilder.operationbuilder.Query"></a>

要为 `Query` 操作执行或生成代码，请执行以下操作。

1. 从 NoSQL Workbench UI 的顶部选择**查询**。

1. 指定分区键值。

1. 如果 `Query` 操作需要排序键，请执行以下操作：

   1. 选择**排序键**。

   1. 指定比较运算符和属性值。

1. 选择**查询**以运行此查询操作。如果需要更多选项，请选中**更多选项**复选框，然后继续执行以下步骤。

1. 如果并非所有属性都应与操作结果一起返回，请选择**投影表达式**。

1. 选择 **\$1** 图标。

1. 输入要与查询结果一起返回的属性。

1. 如果需要更多属性，请选择 **\$1**。

1. 如果必须满足条件表达式 `Query` 操作才能成功，请执行以下操作：

   1. 选择**条件**。

   1. 指定属性名称、比较运算符、属性类型和属性值。

   1. 如果需要其他条件，请再次选择**条件**。

   有关更多信息，请参阅 [DynamoDB 条件表达式 CLI 示例](Expressions.ConditionExpressions.md)。

1. 如果要生成代码，请选择**生成代码**。

   选择所需语言的选项卡。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**，然后输入操作的名称，选择**保存**。

有关此操作的更多信息，请参见 *Amazon DynamoDB API 参考*的 [Query](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html)。

## Scan
<a name="workbench.querybuilder.operationbuilder.scan"></a>

要为 `Scan` 操作执行或生成代码，请执行以下操作。

1. 从 NoSQL Workbench UI 的顶部选择**扫描**。

1. 选择**扫描**按钮以执行此基本扫描操作。如果需要更多选项，请选中**更多选项**复选框，然后继续执行以下步骤。

1. 指定属性名称可筛选扫描结果。

1. 如果并非所有属性都应与操作结果一起返回，请选择**投影表达式**。

1. 如果必须满足条件表达式扫描操作才能成功，请执行以下操作：

   1. 选择**条件**。

   1. 指定属性名称、比较运算符、属性类型和属性值。

   1. 如果需要其他条件，请再次选择**条件**。

   有关更多信息，请参阅 [DynamoDB 条件表达式 CLI 示例](Expressions.ConditionExpressions.md)。

1. 如果要生成代码，请选择**生成代码**。

   选择所需语言的选项卡。现在，您便可复制此代码并在应用程序中使用它。

1. 如果要立即执行操作，请选择**执行**。

1. 如果要保存此操作以供日后使用，选择**保存操作**，然后输入操作的名称，选择**保存**。

## TransactGetItems
<a name="workbench.querybuilder.operationbuilder.transactget"></a>

要为 `TransactGetItems` 操作执行或生成代码，请执行以下操作。

1. 从 NoSQL Workbench UI 顶部的**更多操作**下拉列表中，选择 **TransactGetItems**。

1. 选择 **TransactGetItem** 旁边的 **\$1** 图标。

1. 指定分区键。

1. 指定排序键（如果需要）。

1. 选择**运行**可执行操作，选择**保存操作**可进行保存，或者选择**生成代码**可为操作生成代码。

有关事务的更多信息，请参阅 [Amazon DynamoDB Transactions](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/transactions.html)。

## TransactWriteItems
<a name="workbench.querybuilder.operationbuilder.transactwrite"></a>

要为 `TransactWriteItems` 操作执行或生成代码，请执行以下操作。

1. 从 NoSQL Workbench UI 顶部的**更多操作**下拉列表中，选择 **TransactWriteItems**。

1. 从**操作**下拉列表中选择一个操作。

1. 选择 **TransactWriteItem** 旁边的 **\$1** 图标。

1. 在**操作**下拉列表中，选择您要执行的操作。
   + 对于 `DeleteItem`，按照 [删除项目](#workbench.querybuilder.operationbuilder.Delete) 操作的说明操作。
   + 对于 `PutItem`，按照 [放置项目](#workbench.querybuilder.operationbuilder.Put) 操作的说明操作。
   + 对于 `UpdateItem`，按照 [更新项目](#workbench.querybuilder.operationbuilder.update) 操作的说明操作。

   要更改操作的顺序，请在左侧列表中选择一项操作，然后选择向上或向下箭头以在列表中将其上移或下移。

   要删除一项操作，请在列表中选择该操作，然后选择**删除**（垃圾桶）图标。

1. 选择**运行**可执行操作，选择**保存操作**可进行保存，或者选择**生成代码**可为操作生成代码。

有关事务的更多信息，请参阅 [Amazon DynamoDB Transactions](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/transactions.html)。