

文档 AWS SDK 示例 GitHub 存储库中还有更多 [S AWS DK 示例](https://github.com/awsdocs/aws-doc-sdk-examples)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用 Amazon RDS 数据服务示例 AWS CLI
<a name="cli_2_rds-data_code_examples"></a>

以下代码示例向您展示了如何使用 AWS Command Line Interface 与 Amazon RDS 数据服务配合使用来执行操作和实现常见场景。

*操作*是大型程序的代码摘录，必须在上下文中运行。您可以通过操作了解如何调用单个服务函数，还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接，您可以从中找到有关如何在上下文中设置和运行代码的说明。

**Topics**
+ [操作](#actions)

## 操作
<a name="actions"></a>

### `batch-execute-statement`
<a name="rds-data_BatchExecuteStatement_cli_2_topic"></a>

以下代码示例演示了如何使用 `batch-execute-statement`。

**AWS CLI**  
**执行批处理 SQL 语句**  
以下 `batch-execute-statement` 实例使用参数集对数据数组运行批处理 SQL 语句。  

```
aws rds-data batch-execute-statement \
    --resource-arn "arn:aws:rds:us-west-2:123456789012:cluster:mydbcluster" \
    --database "mydb" \
    --secret-arn "arn:aws:secretsmanager:us-west-2:123456789012:secret:mysecret" \
    --sql "insert into mytable values (:id, :val)" \
    --parameter-sets "[[{\"name\": \"id\", \"value\": {\"longValue\": 1}},{\"name\": \"val\", \"value\": {\"stringValue\": \"ValueOne\"}}],
        [{\"name\": \"id\", \"value\": {\"longValue\": 2}},{\"name\": \"val\", \"value\": {\"stringValue\": \"ValueTwo\"}}],
        [{\"name\": \"id\", \"value\": {\"longValue\": 3}},{\"name\": \"val\", \"value\": {\"stringValue\": \"ValueThree\"}}]]"
```
此命令不生成任何输出。  
有关更多信息，请参阅《Amazon RDS 用户指南》**中的[使用 Aurora Serverless 数据 API](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html)。  
+  有关 API 的详细信息，请参阅*AWS CLI 命令参考[BatchExecuteStatement](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds-data/batch-execute-statement.html)*中的。

### `begin-transaction`
<a name="rds-data_BeginTransaction_cli_2_topic"></a>

以下代码示例演示了如何使用 `begin-transaction`。

**AWS CLI**  
**开始 SQL 事务**  
以下 `begin-transaction` 示例运行 SQL 事务。  

```
aws rds-data begin-transaction \
    --resource-arn "arn:aws:rds:us-west-2:123456789012:cluster:mydbcluster" \
    --database "mydb" \
    --secret-arn "arn:aws:secretsmanager:us-west-2:123456789012:secret:mysecret"
```
输出：  

```
{
    "transactionId": "ABC1234567890xyz"
}
```
有关更多信息，请参阅《Amazon RDS 用户指南》**中的[使用 Aurora Serverless 数据 API](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html)。  
+  有关 API 的详细信息，请参阅*AWS CLI 命令参考[BeginTransaction](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds-data/begin-transaction.html)*中的。

### `commit-transaction`
<a name="rds-data_CommitTransaction_cli_2_topic"></a>

以下代码示例演示了如何使用 `commit-transaction`。

**AWS CLI**  
**提交 SQL 事务**  
以下 `commit-transaction` 示例结束指定的 SQL 事务并提交您在其中所做的更改。  

```
aws rds-data commit-transaction \
    --resource-arn "arn:aws:rds:us-west-2:123456789012:cluster:mydbcluster" \
    --secret-arn "arn:aws:secretsmanager:us-west-2:123456789012:secret:mysecret" \
    --transaction-id "ABC1234567890xyz"
```
输出：  

```
{
    "transactionStatus": "Transaction Committed"
}
```
有关更多信息，请参阅《Amazon RDS 用户指南》**中的[使用 Aurora Serverless 数据 API](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html)。  
+  有关 API 的详细信息，请参阅*AWS CLI 命令参考[CommitTransaction](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds-data/commit-transaction.html)*中的。

### `execute-statement`
<a name="rds-data_ExecuteStatement_cli_2_topic"></a>

以下代码示例演示了如何使用 `execute-statement`。

**AWS CLI**  
**示例 1：执行属于事务的 SQL 语句**  
以下 `execute-statement` 示例运行属于事务的 SQL 语句。  

```
aws rds-data execute-statement \
    --resource-arn "arn:aws:rds:us-west-2:123456789012:cluster:mydbcluster" \
    --database "mydb" \
    --secret-arn "arn:aws:secretsmanager:us-west-2:123456789012:secret:mysecret" \
    --sql "update mytable set quantity=5 where id=201" \
    --transaction-id "ABC1234567890xyz"
```
输出：  

```
{
    "numberOfRecordsUpdated": 1
}
```
**示例 2：执行带有参数的 SQL 语句**  
以下 `execute-statement` 示例运行带有参数的 SQL 语句。  

```
aws rds-data execute-statement \
    --resource-arn "arn:aws:rds:us-east-1:123456789012:cluster:mydbcluster" \
    --database "mydb" \
    --secret-arn "arn:aws:secretsmanager:us-east-1:123456789012:secret:mysecret" \
    --sql "insert into mytable values (:id, :val)" \
    --parameters "[{\"name\": \"id\", \"value\": {\"longValue\": 1}},{\"name\": \"val\", \"value\": {\"stringValue\": \"value1\"}}]"
```
输出：  

```
{
    "numberOfRecordsUpdated": 1
}
```
有关更多信息，请参阅《Amazon RDS 用户指南》**中的[使用 Aurora Serverless 数据 API](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html)。  
+  有关 API 的详细信息，请参阅*AWS CLI 命令参考[ExecuteStatement](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds-data/execute-statement.html)*中的。

### `rollback-transaction`
<a name="rds-data_RollbackTransaction_cli_2_topic"></a>

以下代码示例演示了如何使用 `rollback-transaction`。

**AWS CLI**  
**回滚 SQL 事务**  
以下 `rollback-transaction` 示例回滚指定的 SQL 事务。  

```
aws rds-data rollback-transaction \
    --resource-arn "arn:aws:rds:us-west-2:123456789012:cluster:mydbcluster" \
    --secret-arn "arn:aws:secretsmanager:us-west-2:123456789012:secret:mysecret" \
    --transaction-id "ABC1234567890xyz"
```
输出：  

```
{
    "transactionStatus": "Rollback Complete"
}
```
有关更多信息，请参阅《Amazon RDS 用户指南》**中的[使用 Aurora Serverless 数据 API](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html)。  
+  有关 API 的详细信息，请参阅*AWS CLI 命令参考[RollbackTransaction](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds-data/rollback-transaction.html)*中的。