반응형 Collections3 PL/SQL (19) - Collections (중첩테이블 - Nested Table) 인덱스 테이블과 달리 행이 순서대로 정렬되지 않은 모음이다. 특정 데이터형을 지원하지 않는다. 초기화하려면 constructor 메소드를 사용해야 한다. 인덱스 범위는 -2,147,483,647 ~ 2,147,483,647 이다. 검색할 때 항목은 연속적으로 색인화된다. 중첩테이블 선언 - INDEX BY 절이 사용되지 않는다. 이 절이 있으면 인덱스 테이블, 없으면 중첩 테이블. TYPE 형이름 IS TABLE OF 데이터형 [NOT NULL]; - 항목을 추가하기 전에 생성자를 호출하여 테이블을 초기화 시킨다. - 생성자는 오브젝트에 실제로 메모리를 할당하고, 그 오브젝트와 연결된 데이터 구조체를 초기화시키는 함수를 말한다. - 중첩테이블에서 생성자 함수는 모음을 실제로 생성한 다음, 그것을 선언.. ■ Data Skill ■/PL-SQL 2023. 3. 18. PL/SQL (18) - Collections (VARRAY) VARRAY - 가변 크기 배열은 최대 크기를 고정시킬 수 있다는 것을 제외하면 중첩테이블과 유사하다. - VARRAY 생성시 최대 크기를 설정하기 때문에, 항목을 추가할수록 여유공간이 없어지게 된다. - 크기를 처음에 정해버리기 때문에 한번 추가된 항목은 삭제할 수 없다. - 각각의 배열 요소가 순서대로 유지된다. 생성자 - varray를 사용하기 전에 생성자(Constructor)를 호출하여 초기화 시켜야한다. - 생성자에는 파라미터를 전달할 수 있으며, 이느 배열 요소를 생성하는데 사용된다. - 파라미터를 전달하지 않으면 빈 배열을 생성한다. 배열의 선언과 초기화 TYPE 형이름 IS VARRAY(크기) OF 항목형 [NOT NULL]; - 크기 : 배열이 가질 요소의 개수 - 항목형 : 배열의.. ■ Data Skill ■/PL-SQL 2023. 3. 18. PL/SQL (17) - Collections (Index-by Table) Collection은 여러 오브젝트를 하나로 묶을 수 있게 해준다. 프로그래밍의 배열과 유사하다. 3가지 유형 1. 인덱스 테이블 2. 중첩 테이블 3. 가변 크기 배열 (varray) 1. 인덱스 테이블 (Index-by) 인덱스 테이블이란? - 테이블의 각 요소가 정수값으로 색인되어 있는 테이블. - 테이블의 각 요소는 불연속적으로 저장된다. - 테이블의 최대 크기를 설정하지 못한다. 인덱스 테이블 TYPE 정의 및 변수 선언 - 먼저 TYPE을 선언하고, 이 TYPE의 변수를 선언한다. - TYPE은 스칼라(NUMBER,VCHAR2,...)나 레코드(RECORD)가 될 수 있다. - 테이블의 인덱스에 대한 데이터형은 BINARY_INTEGER 여야 한다. TYPE 형이름 IS TABLE OF 데.. ■ Data Skill ■/PL-SQL 2023. 3. 18. 이전 1 다음 728x90