VARRAY(가변 크기 배열) - PLSQL의 컬렉션

Linda Hamilton
풀어 주다: 2024-10-03 06:23:30
원래의
528명이 탐색했습니다.

VARRAY (Variable-size array) - Collection in PLSQL

PL/SQL에서 VARRAY(가변 크기 배열)는 고정된 수의 요소를 저장할 수 있는 컬렉션 유형입니다. VARRAY의 각 요소는 순차적으로 저장되며 모든 요소는 동일한 데이터 유형을 갖습니다.

VARRAY의 특징:

  1. 고정 최대 크기: VARRAY를 정의할 때 보유할 수 있는 최대 요소 수를 지정합니다. 이 한도를 초과할 수 없습니다.

  2. 순차: VARRAY의 요소는 인덱스 1부터 시작하여 특정 순서로 저장되고 액세스됩니다.

  3. 동질성: VARRAY의 모든 요소는 동일한 데이터 유형이어야 합니다.

  4. 밀도 인덱스: VARRAY는 항상 밀도가 높습니다. 이는 인덱스 사이에 간격이 없음을 의미합니다.

  5. Oracle 데이터베이스에 저장: 데이터베이스 열에 사용되는 경우 VARRAY는 테이블 행 데이터와 함께 인라인으로 저장됩니다.

PL/SQL의 VARRAY 구문

  1. VARRAY 유형 선언

먼저 VARRAY 유형을 정의하여 보유할 수 있는 요소 수와 요소의 데이터 유형을 지정합니다.

TYPE varray_name은 VARRAY(max_size) OF element_type입니다.

varray_name: VARRAY 유형의 이름입니다.

max_size: VARRAY에 저장할 수 있는 최대 요소 수

element_type: VARRAY에 저장된 요소의 데이터 유형입니다.

  1. VARRAY 정의 및 초기화

VARRAY 유형이 선언되면 해당 유형의 변수를 선언하고 값으로 초기화할 수 있습니다.

선언
유형 직원_varray는 VARRAY(5) OF VARCHAR2(30)입니다. -- 최대 크기가 5인 VARRAY 유형 선언
Employee_names Employee_varray := Employee_varray('John', 'Jane'); -- 2개 요소로 초기화
시작
-- VARRAY를 사용하는 명령문
끝;

VARRAY 작업:

다음은 VARRAY에서 수행할 수 있는 몇 가지 일반적인 작업입니다.

EXTEND(n): VARRAY 끝에 n개의 요소를 추가합니다.

COUNT: VARRAY의 현재 요소 수를 반환합니다.

TRIM(n): VARRAY 끝에서 n개의 요소를 제거합니다.

FIRST 및 LAST: VARRAY의 첫 번째 및 마지막 인덱스를 반환합니다.

예: VARRAY 선언 및 사용

선언
-- VARCHAR2(50)의 요소를 최대 5개까지 담을 수 있는 VARRAY 유형을 선언하세요
유형 직원_varray는 VARRAY(5) OF VARCHAR2(50)입니다.

-- Declare a variable of this VARRAY type and initialize it with two values
employee_names employee_varray := employee_varray('John', 'Jane');
로그인 후 복사

시작
-- VARRAY에 더 많은 요소를 추가하세요
직원 이름.EXTEND(3); -- 3개의 요소를 더 추가하여 배열을 확장합니다
Employee_names(3) := '샘';
Employee_names(4) := '피터';
Employee_names(5) := '루시';

-- Print all the names in the VARRAY
FOR i IN 1..employee_names.COUNT LOOP
    DBMS_OUTPUT.PUT_LINE('Employee ' || i || ': ' || employee_names(i));
END LOOP;

-- Trim 1 element from the end of the VARRAY
employee_names.TRIM(1);
DBMS_OUTPUT.PUT_LINE('After trimming 1 element:');

-- Print remaining names in the VARRAY
FOR i IN 1..employee_names.COUNT LOOP
    DBMS_OUTPUT.PUT_LINE('Employee ' || i || ': ' || employee_names(i));
END LOOP;
로그인 후 복사

종료;
/

설명:

  1. VARRAY 유형 선언: VARCHAR2(50) 유형의 요소를 최대 5개 보유할 수 있는 VARRAY 유형 Employee_varray를 선언합니다.

  2. 초기화: Employee_names 변수를 'John'과 'Jane'이라는 두 이름으로 초기화합니다.

  3. EXTEND: EXTEND(3) 메서드를 사용하여 VARRAY를 확장하여 3개의 요소를 더 보유함으로써 총 5개의 요소를 위한 공간을 만듭니다.

  4. 요소 액세스: 새 위치(3~5)에 값을 할당하고 루프를 사용하여 모든 요소를 ​​인쇄합니다.

  5. TRIM: TRIM(1) 메서드는 VARRAY에서 마지막 요소를 제거하여 요소 수를 5에서 4로 줄이는 데 사용됩니다.

출력:

직원 1: 존
직원 2: 제인
직원 3: 샘
직원 4: 피터
직원 5: 루시
요소 1개를 잘라낸 후:
직원 1: John
직원 2: 제인
직원 3: 샘
직원 4: 피터

핵심 포인트:

VARRAY는 컬렉션의 최대 크기를 미리 알 때 유용합니다.

순차 액세스: VARRAY의 요소는 해당 인덱스를 사용하여 액세스됩니다.

확장 및 트리밍: EXTEND 및 TRIM을 사용하여 VARRAY에서 요소를 동적으로 추가하거나 제거할 수 있습니다.

위 내용은 VARRAY(가변 크기 배열) - PLSQL의 컬렉션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:dev.to
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿