

Doc AWS SDK Examples GitHub リポジトリには、他にも SDK の例があります。 [AWS](https://github.com/awsdocs/aws-doc-sdk-examples)

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AWS SDKs基本的な例
<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アクション
<a name="rds-data_code_examples_actions"></a>

次のコード例は、 AWS SDKs を使用して個々の Amazon RDS Data Service アクションを実行する方法を示しています。それぞれの例には、GitHub へのリンクがあり、そこにはコードの設定と実行に関する説明が記載されています。

これらは Amazon RDS Data Service API を呼び出すもので、コンテキスト内で実行する必要がある大規模なプログラムからのコード抜粋です。アクションは [AWS SDKsシナリオ](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)

# AWS SDK または CLI `ExecuteStatement`で を使用する
<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 v1 の Data 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 ]

**SDK for Rust**  
 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 の詳細については、「*AWS SDK for Rust API リファレンス*」の「[ExecuteStatement](https://docs.rs/aws-sdk-rdsdata/latest/aws_sdk_rdsdata/client/struct.Client.html#method.execute_statement)」を参照してください。

------