

文件 AWS 開發套件範例 GitHub 儲存庫中有更多可用的 [AWS SDK 範例](https://github.com/awsdocs/aws-doc-sdk-examples)。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 的 Amazon RDS Data Service 範例 AWS CLI
<a name="cli_2_rds-data_code_examples"></a>

下列程式碼範例示範如何使用 AWS Command Line Interface 搭配 Amazon RDS Data Service 執行動作和實作常見案例。

*Actions* 是大型程式的程式碼摘錄，必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數，但您可以在其相關情境中查看內容中的動作。

每個範例均包含完整原始碼的連結，您可在連結中找到如何設定和執行內容中程式碼的相關指示。

**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)。