1. 변수 선언
PL/SQL 블록 내에서 변수를 선언하려면 선언부(DECLARE)에서 선언해야 함
identifier [CONSTANT] datatype [NOT NULL]
[:= | DEFAULT expression];
2. 데이터 타입
① 스칼라
숫자, 문자, 날짜, BOOLEAN
② 레퍼런스
변수의 데이터 타입을 데이터베이스 기존 칼럼에 맞추어 선언하기 위해 %TYPE Attribute를 이용
변수를 선언할 때 필요한 데이터 타입을 명시적으로 언급하는 대신 'TABLE이름.COLUMN이름%TYPE'으로 지정
- %TYPE : 칼럼 단위로 데이터 타입을 참조
- %ROWTYPE : 로우 전체에 대한 데이터 타입을 참조 (테이블의 칼럼 개수나 데이터 타입을 전혀 몰라도 됨)
DECLARE
V_ENO EMPLOYEE.ENO%TYPE;
V_ENAME EMPLOYEE.ENAME%TYPE;
→ 레퍼런스 타입으로 선언한 V_ENO 변수는 EMPLOYEE 테이블의 ENO 칼럼의 데이터 타입과 크기를 그대로 참조해서 정의
3. 대입문
변수에 값을 저장하기 위해 ':=' 사용
identifier := expression;
변수 선언 및 값 할당하기
※ SELECT INTO
PL/SQL에서도 테이블의 조회를 위해 SELECT문을 사용
INTO 절이 추가로 필요
SELECT select_list
INTO {variable_name1[,variable_name2,..] | record_name}
FROM table_name
WHERE condition;
SELECT ENO, ENAME, DNO
INTO V_ENO, V_ENAME, V_DNO
FROM EMPLOYEE
WHERE ENAME = 'SCOTT';
사원번호와 사원이름 출력하기
'SQL - Oracle > 14. PL/SQL' 카테고리의 다른 글
Day 38 : 연습 문제 - PL/SQL (0) | 2021.12.09 |
---|---|
Day 38 : Exercise - PL/SQL (0) | 2021.12.09 |
Day 38 : 커서 (0) | 2021.12.09 |
Day 38 : 제어문 (0) | 2021.12.09 |
Day 38 : PL/SQL (0) | 2021.12.09 |