2024. 1. 21. 19:59ㆍDBMS/ORACLE Admin
변수는 데이터를 임시저장하여 저장된 값을 반복해서 재사용하며 조작하기 위해 사용한다.
선언부에서 선언되고 특정 값으로 초기화도 가능하다.
변수를 선언한다는 것은 변수에 들어올 값에 대한 메모리 공간을 미리 확보하고 데이터 유형을 지정, 참조하도록 공간 이름을 지정하는 것이다.
변수의 주기는 해당 변수가 선언된 블록 내부이다. 중첩으로 블록을 포함하는 경우 바깥쪽 블록에서 선언된 변수는 포함된 블록 내부에서도 참조될 수 있다.내부 블록에 바깥쪽 블록에서 선언된 동일명의 변수가 있다면 이 떄 변수는 해당 블록 내의 지역 변수가 우선 참조된다. 그리고 중첩 블록일 경우 내부 블록 지역 변수는 바깥 블록에서 참조할 수 없다.
변수는 PL SQL ,NON PLSQL 변수로 나뉜다.
단순변수에는 SCALAR , REFERENCE 변수가 있다. 스칼라 변수란 단일 값을 가지는 변수의 데이터형을 직접 지정해주는 변수를말한다.
SCALAR VARIABLE
- INDENTIFIER 변수의 이름으로 다른 변수와 구별되는 식별자의 역할을 하며 블록 내에서는 유일해야 한다.
- CONSTANT 읽기 전용 변수, 즉 상수로 선언하기 위한 키워드로 초깃값이 지정되어야 한다. 값이 없을 경우 생략 가능하다.
- DATATYPE
- NOT NULL 항상 값을 가지도록 제약을 주는 키워드이고 이 값이 주어지면 초깃값이 반드시 지정되어야 한다.
- DEFALUT
- EXPR 변수에 부여할 기본값을 의미한다. 단순한 값, 변수, 수식, 함수가 올 수 있다.
REFERENCE 참조변수는 저장되어야 할 정확한 데이터 형태를 모를 경우 해당 데이터가 들어 있는 컬럼의 정보를 참조하게끔 설정하는 선언 방법
복합변수는 변수 하나 안에 여러 가지 다른 유형의 데이터를 포함할 수 있다. 연관이 있는 여러가지 데이터들을 한꺼번에 처리해야할 경우 사용된다.
TABLE TYPE (컬렉션) 변수는 연관 배열 ,중첩 테이블 ,VARRAY 가 있다. 연관 배열은 변수 선언 당시 채워지지 않으며 키나 값을 포함하지 않으므로 선언에서 연관 배열을 초기화할 수 없다. 연관 배열을 채우려면 명시적 실행문이 필요하다. 새 행이 추가됨에 따라 연관 배열이 증가하도록 행 수가 동적으로 늘어날 수 있다. 키는 순차적이 아닐 수 있으며 양수 및 음수수일 수 있다.
TABLE TYPE 변수 생성 후 V_NAME을 TABLE TYPE 으로 선언했다.
사원의 이름을 가져와서 V_NAME(0)에 할당했다.
사원들의 이름을 변수에 담고 출력하는 예
'DBMS > ORACLE Admin' 카테고리의 다른 글
tablespace checkpoint option (0) | 2024.02.02 |
---|---|
segment_name 쿼리 (0) | 2024.02.02 |
PL/SQL CURSOR (0) | 2024.01.21 |
schema (0) | 2024.01.11 |
ORACLE 설치 후 계정 생성 오류 해결 (0) | 2023.12.30 |