25.4. 데이터를 업데이트하는 SQL 문의 매개 변수 자리 표시자 및 값 정보


흐름 중간에 있거나 간단한 통합을 완료하는 데이터베이스 연결은 데이터를 업데이트하는 SQL 문을 실행할 수 있습니다. 통합에 데이터베이스 연결을 추가하면 실행할 SQL 문에서 자리 표시자 매개 변수를 지정할 수 있습니다. 실행되는 동안 입력 매개 변수 값이 컬렉션에 있을 때 연결은 배치 업데이트를 수행할 수 있습니다.

SQL 문에서 매개변수 지정

통합을 만들거나 편집하고 데이터베이스를 업데이트하는 연결을 추가하면 런타임 시 연결이 실행되는 SQL 문에서 자리 표시자 매개 변수를 지정하거나 런타임 시 실행할 저장 프로시저에 자리 표시자 매개 변수가 있을 수 있습니다. 예를 들면 다음과 같습니다.

INSERT INTO TODO(task, completed) VALUES(:#param_1, :#param_2)
DELETE FROM TODO WHERE task LIKE :#param_3

이러한 자리 표시자의 값을 지정하려면 데이터베이스 연결 전에 흐름에 데이터 매핑 단계를 추가합니다. 데이터 매핑 단계에서 적절한 소스 데이터 필드를 대상 데이터 필드에 매핑합니다. 예를 들어 소스 데이터를 :#param_1,:#param_2:#param_3 대상 필드에 매핑합니다. 데이터 매퍼 단계 추가를 참조하십시오.

매개변수 값 컬렉션을 사용한 배치 업데이트

런타임 시 데이터베이스 연결이 데이터를 삽입, 삭제 또는 업데이트하는 SQL 문을 실행하는 경우 실행 중인 SQL 문이 하나 이상의 자리 표시자 매개 변수를 지정하는 경우가 많습니다(예: :#task ). 이 경우 연결에 대한 입력은 단일 매개변수 세트 또는 매개 변수 세트 컬렉션일 수 있습니다. 여기서 세트의 각 요소는 해당 자리 표시자 매개 변수에 대한 값을 정의합니다.

데이터베이스 연결에 대한 입력은 흐름의 이전 연결(예: HTTP 요청) 또는 API 공급자 통합을 위해 REST API 서비스로 전송된 요청에서 가져옵니다. 입력이 컬렉션이면 연결은 일괄 모드를 사용하여 테이블을 업데이트합니다. 예를 들어 다음 SQL 문을 고려하십시오.

insert into todo (task) values (:#task)

입력 컬렉션에 3개의 값이 포함된 경우 연결에서 각 값에 대해 하나씩 세 개의 레코드를 삽입합니다. 이제 두 개의 자리 표시자 매개 변수가 있는 SQL 문을 고려하십시오.

insert into todo (task, completed) values (:#task, :#completed)

이 SQL 문을 실행하는 연결에 대한 입력에서 데이터 셰이프 사양은 단일 요소를 지정할 수 있습니다.In the input to the connection that executes this SQL statement, a data shape specification could specify a single element, for example:

{"task": "write some docs", "completed": 0}

또는 컬렉션을 지정할 수 있습니다. 예를 들면 다음과 같습니다.

[{"task": "write doc", "completed": 1},
 {"task": "publish doc", "completed": 0}]

컬렉션을 입력으로 사용하면 연결은 각 매개 변수 값 집합에 대해 한 번 삽입 작업을 실행합니다. 이 예제에서 연결은 각 매개 변수 값 집합에 하나씩 두 개의 레코드를 테이블에 추가합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.