728x90
오라클 데이터베이스에서 SYS.ODCIVARCHAR2LIST를 활용하면 문자열의 리스트를 프로시저에 전달하여 처리할 수 있습니다. 이번 포스팅에서는 SYS.ODCIVARCHAR2LIST를 사용하여 프로시저에서 리스트를 입력받고 처리하는 방법에 대해 설명하겠습니다.
1. 프로시저에서 리스트로 입력 선언하기
SYS.ODCIVARCHAR2LIST는 문자열 리스트를 다루기 위한 Oracle의 내장 타입입니다. 이를 사용하여 프로시저에서 리스트를 입력받을 수 있습니다.
CREATE OR REPLACE PROCEDURE PROC_TEST(
p_codes IN SYS.ODCIVARCHAR2LIST
)
IS
BEGIN
-- 프로시저 로직
END;
- 이와 같이 p_codes를 SYS.ODCIVARCHAR2LIST 타입으로 선언하면, 문자열의 리스트를 입력으로 받을 수 있습니다.
2. 사용 방법
프로시저 내에서 리스트를 사용하여 다양한 작업을 수행할 수 있습니다. 리스트의 각 항목에 접근하려면 TABLE과 COLUMN_VALUE를 사용하여 리스트의 값을 조회할 수 있습니다.
BEGIN
FOR rec IN (SELECT COLUMN_VALUE AS item_code FROM TABLE(p_codes)) LOOP
DBMS_OUTPUT.PUT_LINE('Item Code: ' || rec.item_code);
END LOOP;
END;
3. 프로시저 호출
프로시저를 호출할 때 SYS.ODCIVARCHAR2LIST를 생성하여 값을 전달합니다. 다음은 프로시저를 호출하는 예제입니다.
DECLARE
v_codes SYS.ODCIVARCHAR2LIST;
BEGIN
v_codes := SYS.ODCIVARCHAR2LIST('123', '456', '789');
PROC_TEST(p_codes => v_codes);
END;
이 예제에서는 v_codes라는 변수를 SYS.ODCIVARCHAR2LIST 타입으로 선언하고, 여기에 여러 CODE 값을 추가한 후 PROC_TEST 프로시저를 호출하고 있습니다.
이렇게 SYS.ODCIVARCHAR2LIST를 사용하면 문자열 리스트를 효과적으로 처리할 수 있으며, 복잡한 데이터 처리를 간편하게 구현할 수 있습니다.
감사합니다.
728x90
'데이터베이스 > 오라클' 카테고리의 다른 글
[Oracle] JOB 스케줄러 실행 정보 조회 (0) | 2024.09.19 |
---|---|
[Oracle] DB_LINK 기본개념 및 사용법 (0) | 2024.09.09 |
[Oracle] java.sql.SQLException: 소켓에서 읽을 데이터가 없습니다. (0) | 2024.08.12 |
[Oracle] DB CharacterSet 조회 및 수정 방법 (0) | 2024.05.22 |
[Oracle] 오라클 모든 테이블과 컬럼 조회하기 (0) | 2024.05.13 |