

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

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

# 使用 AWS SDKs Amazon RDS Data Service 程式碼範例
<a name="rds-data_code_examples"></a>

下列程式碼範例示範如何使用 Amazon Relational Database Service Data Service 搭配 AWS 軟體開發套件 (SDK)。

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

*案例*是向您展示如何呼叫服務中的多個函數或與其他 AWS 服務組合來完成特定任務的程式碼範例。

**其他資源**
+  **[Amazon RDS Data Service 使用者指南](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/Welcome.html)** – Amazon RDS Data Service 的詳細資訊。
+ **[Amazon RDS Data Service API 參考](https://docs.aws.amazon.com/rdsdataservice/latest/APIReference/Welcome.html)** – 所有可用 Amazon RDS Data Service 動作的詳細資訊。
+ **[AWS 開發人員中心](https://aws.amazon.com/developer/code-examples/?awsf.sdk-code-examples-product=product%23rds)** – 您可以依類別或全文搜尋篩選的程式碼範例。
+ **[AWS SDK 範例](https://github.com/awsdocs/aws-doc-sdk-examples)** – GitHub 儲存庫使用慣用語言的完整程式碼。包含設定和執行程式碼的指示。

**Contents**
+ [基本概念](rds-data_code_examples_basics.md)
  + [動作](rds-data_code_examples_actions.md)
    + [`ExecuteStatement`](rds-data_example_rds-data_ExecuteStatement_section.md)
+ [案例](rds-data_code_examples_scenarios.md)
  + [建立 Aurora 無伺服器工作項目追蹤器](rds-data_example_cross_RDSDataTracker_section.md)

# 使用 AWS SDKs Amazon RDS Data Service 基本範例
<a name="rds-data_code_examples_basics"></a>

下列程式碼範例說明如何搭配 AWS SDK 使用 Amazon Relational Database Service Data Service 的基本功能。

**Contents**
+ [動作](rds-data_code_examples_actions.md)
  + [`ExecuteStatement`](rds-data_example_rds-data_ExecuteStatement_section.md)

# 使用 AWS SDKs 的 Amazon RDS Data Service 動作
<a name="rds-data_code_examples_actions"></a>

下列程式碼範例示範如何使用 AWS SDKs 執行個別 Amazon RDS Data Service 動作。每個範例均包含 GitHub 的連結，您可以在連結中找到設定和執行程式碼的相關說明。

這些摘錄會呼叫 Amazon RDS Data Service API，是必須在內容中執行之大型程式的程式碼摘錄。您可以在 [使用 AWS SDKs Amazon RDS Data Service 案例](rds-data_code_examples_scenarios.md) 中查看內容中的動作。

 下列範例僅包含最常使用的動作。如需完整清單，請參閱《[Amazon Relational Database Service Data Service API 參考](https://docs.aws.amazon.com/rdsdataservice/latest/APIReference/Welcome.html)》。

**Topics**
+ [`ExecuteStatement`](rds-data_example_rds-data_ExecuteStatement_section.md)

# `ExecuteStatement` 搭配 AWS SDK 或 CLI 使用
<a name="rds-data_example_rds-data_ExecuteStatement_section"></a>

下列程式碼範例示範如何使用 `ExecuteStatement`。

------
#### [ CLI ]

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

------
#### [ Rust ]

**適用於 Rust 的 SDK**  
 GitHub 上提供更多範例。尋找完整範例，並了解如何在 [AWS 程式碼範例儲存庫](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/rustv1/examples/rdsdata#code-examples)中設定和執行。

```
async fn query_cluster(
    client: &Client,
    cluster_arn: &str,
    query: &str,
    secret_arn: &str,
) -> Result<(), Error> {
    let st = client
        .execute_statement()
        .resource_arn(cluster_arn)
        .database("postgres") // Do not confuse this with db instance name
        .sql(query)
        .secret_arn(secret_arn);

    let result = st.send().await?;

    println!("{:?}", result);
    println!();

    Ok(())
}
```
+  如需 API 的詳細資訊，請參閱《*適用於 Rust 的AWS SDK API 參考*》中的 [ExecuteStatement](https://docs.rs/aws-sdk-rdsdata/latest/aws_sdk_rdsdata/client/struct.Client.html#method.execute_statement)。

------

# 使用 AWS SDKs Amazon RDS Data Service 案例
<a name="rds-data_code_examples_scenarios"></a>

下列程式碼範例示範如何在 Amazon RDS Data Service AWS SDKs 中實作常見案例。這些案例示範如何呼叫 Amazon RDS Data Service 中的多個函數，或與其他 AWS 服務結合，藉以完成特定任務。每個案例均包含完整原始碼的連結，您可在連結中找到如何設定和執行程式碼的相關指示。

案例的目標是獲得中等水平的經驗，協助您了解內容中的服務動作。

**Topics**
+ [建立 Aurora 無伺服器工作項目追蹤器](rds-data_example_cross_RDSDataTracker_section.md)

# 建立 Aurora 無伺服器工作項目追蹤器
<a name="rds-data_example_cross_RDSDataTracker_section"></a>

說明如何建立 Web 應用程式追蹤 Amazon Aurora Serverless 資料庫中的工作項目，並且使用 Amazon Simple Email Service (Amazon SES) 傳送報告。

------
#### [ .NET ]

**適用於 .NET 的 SDK**  
 示範如何使用 適用於 .NET 的 AWS SDK 建立 Web 應用程式，以使用 Amazon Simple Email Service (Amazon SES) 追蹤 Amazon Aurora 資料庫中的工作項目和電子郵件報告。這個範例使用以 React.js 建置的前端與 RESTful .NET 後端互動。  
+ 將 React Web 應用程式與 AWS 服務整合。
+ 列出、新增、更新和刪除 Aurora 資料表中的項目。
+ 使用 Amazon SES 傳送篩選工作項目的電子郵件報告。
+ 使用隨附的 AWS CloudFormation 指令碼部署和管理範例資源。
 如需完整的原始碼和如何設定及執行的指示，請參閱 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/dotnetv3/cross-service/AuroraItemTracker) 上的完整範例。  

**此範例中使用的服務**
+ Aurora
+ Amazon RDS
+ Amazon RDS 資料服務
+ Amazon SES

------
#### [ C\$1\$1 ]

**適用於 C\$1\$1 的 SDK**  
 說明如何建立可追蹤和報告存放在 Amazon Aurora Serverless 資料庫中的工作項目的 Web 應用程式。  
 如需完整的原始碼以及如何設定 C\$1\$1 REST API 以查詢 Amazon Aurora Serverless 資料並供 React 應用程式使用的說明，請參閱 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/cpp/example_code/cross-service/serverless-aurora) 上的完整範例。  

**此範例中使用的服務**
+ Aurora
+ Amazon RDS
+ Amazon RDS 資料服務
+ Amazon SES

------
#### [ Java ]

**適用於 Java 2.x 的 SDK**  
 說明如何建立可追蹤和報告存放在 Amazon RDS 資料庫中的工作項目的 Web 應用程式。  
 如需完整的原始碼以及如何設定 Spring REST API 以查詢 Amazon Aurora 無伺服器資料並供 React 應用程式使用的說明，請參閱 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2/usecases/Creating_Spring_RDS_Rest) 上的完整範例。  
 如需完整的原始碼和如何設定及執行使用 JDBC API 之範例的指示，請參閱 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javav2/usecases/Creating_rds_item_tracker) 上的完整範例。  

**此範例中使用的服務**
+ Aurora
+ Amazon RDS
+ Amazon RDS 資料服務
+ Amazon SES

------
#### [ JavaScript ]

**適用於 JavaScript (v3) 的 SDK**  
 示範如何使用 適用於 JavaScript 的 AWS SDK (v3) 建立 Web 應用程式，以使用 Amazon Simple Email Service (Amazon SES) 追蹤 Amazon Aurora 資料庫中的工作項目和電子郵件報告。這個範例使用以 React.js 建置的前端與 Express Node.js 後端互動。  
+ 將 React.js Web 應用程式與 整合。 AWS 服務
+ 列出、新增和更新 Aurora 資料表中的項目。
+ 使用 Amazon SES 傳送篩選工作項目的電子郵件報告。
+ 使用隨附的 AWS CloudFormation 指令碼部署和管理範例資源。
 如需完整的原始碼和如何設定及執行的指示，請參閱 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/javascriptv3/example_code/cross-services/aurora-serverless-app) 上的完整範例。  

**此範例中使用的服務**
+ Aurora
+ Amazon RDS
+ Amazon RDS 資料服務
+ Amazon SES

------
#### [ Kotlin ]

**SDK for Kotlin**  
 說明如何建立可追蹤和報告存放在 Amazon RDS 資料庫中的工作項目的 Web 應用程式。  
 如需完整的原始碼以及如何設定 Spring REST API 以查詢 Amazon Aurora 無伺服器資料並供 React 應用程式使用的說明，請參閱 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/kotlin/usecases/serverless_rds) 上的完整範例。  

**此範例中使用的服務**
+ Aurora
+ Amazon RDS
+ Amazon RDS 資料服務
+ Amazon SES

------
#### [ PHP ]

**適用於 PHP 的 SDK**  
 示範如何使用 適用於 PHP 的 AWS SDK 建立 Web 應用程式，以使用 Amazon Simple Email Service (Amazon SES) 追蹤 Amazon RDS 資料庫中的工作項目和電子郵件報告。這個範例使用以 React.js 建置的前端與 RESTful PHP 後端互動。  
+ 將 React.js Web 應用程式與 AWS 服務整合。
+ 列出、新增、更新和刪除 Amazon RDS 資料表中的項目。
+ 使用 Amazon SES 傳送篩選工作項目的電子郵件報告。
+ 使用隨附的 AWS CloudFormation 指令碼部署和管理範例資源。
 如需完整的原始碼和如何設定及執行的指示，請參閱 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/php/cross_service/aurora_item_tracker) 上的完整範例。  

**此範例中使用的服務**
+ Aurora
+ Amazon RDS
+ Amazon RDS 資料服務
+ Amazon SES

------
#### [ Python ]

**適用於 Python 的 SDK (Boto3)**  
 示範如何使用 適用於 Python (Boto3) 的 AWS SDK 建立 REST 服務，以使用 Amazon Simple Email Service (Amazon SES) 追蹤 Amazon Aurora Serverless 資料庫中的工作項目和電子郵件報告。這個範例使用 Flask Web 框架來處理 HTTP 路由，並與 React 網頁整合以呈現功能完整的 Web 應用程式。  
+ 建置與 整合的 Flask REST 服務 AWS 服務。
+ 讀取、寫入和更新儲存在 Aurora 無伺服器資料庫中的工作項目。
+ 建立包含資料庫登入資料的 AWS Secrets Manager 秘密，並使用它來驗證對資料庫的呼叫。
+ 使用 Amazon SES 傳送工作項目的電子郵件報告。
 如需完整的原始碼和如何設定及執行的指示，請參閱 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/python/cross_service/aurora_item_tracker) 上的完整範例。  

**此範例中使用的服務**
+ Aurora
+ Amazon RDS
+ Amazon RDS 資料服務
+ Amazon SES

------