

Doc AWS SDK 예제 GitHub 리포지토리에서 더 많은 SDK 예제를 사용할 수 있습니다. [AWS](https://github.com/awsdocs/aws-doc-sdk-examples) 

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 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)

# 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에 데이터 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)을 참조하세요.

------