2. PL/SQL 변수 선언

A. 변수 사용 및 처리

§Use
§Data 의 임시 저장 영역
§저장된 값 조작
§재사용성
§Handling
§선언 섹션에서 선언 및 초기화(optionally)
§실행 섹션에서 사용되고 새 값이 할당됨
§Sub programparameter 로 전달됨
§Sub program의 출력 결과를 보유하는데 사용됨

B. 변수 이름에 대한 요구사항

§문자로 시작한다.
§문자나 숫자를 포함할 수 있다.
§특수 문자($, _, # )를 포함할 수 있다.
§30자 이하의 문자만 포함 한다.
§예약어를 포함하면 안된다. 

C. 변수 선언 및 초기화

§Syntax
§Identifier [CONSTANT] datatype [NOT NULL]

  [:= | DEFAULT expr] ;

§Examples

DECLARE

v_hiredatae      DATE;

v_deptno         NUMBER(2) NOT NULL := 10;

v_location        VARCHAR2(13) := ‘Atlanta’;

c_comm          CONSTANT NUMBER := 1400;

EX)

set serveroutput on

declare

v_myname varchar2 (20) ;

begin

dbms_output.put_line( ‘ My name is : ‘ || v_myname);

v_myname := ‘John’;

dbms_output.put_line( ‘ My name is : ‘ || v_myname);

end;

/

D. 문자열 리터럴의 구분자

 

E. 변수 Type

§PL/SQL 변수
§Scalar
§Reference
§LOB
§Composite
§Non-PL/SQL 변수
§Bind 변수

F. %TYPE

§Database column 정의
§table.column 이름이 앞에 나옴
§type 은 같지만 제약조건은 적용되지 않음
§다른 선언된 변수
§선언된 변수의 이름이 앞에 나옴
§Syntax

identifier  table.column_name%TYPE;

EX)

declare

v_emp_lname  employees.last_name%type := ‘King’ ;

v_lname   v_emp_lname%type := ‘John’ ;

begin

dbms_output.put_line(‘Name is : ‘ || v_emp_lname);

dbms_output.put_line(‘Name is : ‘ || v_lname);

end;

/

G. Boolean

§TRUE, FALSE, NULL 값만 할당 가능
§조건식에 AND, OR, NOT 사용하여 변수 값 확인
§산술, 문자 및 날짜 표현식을 값 반환하는데 사용 가능
§example

  flag  Boolean := false;

  flag := emp_sal1 < emp_sal2;

H. Composite Data Types

 

I. Bind 변수 

§호스트 환경에서 생성
§호스트 변수라고도 한다.
§VARIABLE 키워드를 사용하여 생성
§SQL 문과 PL/SQL 블록에서 사용
§PL/SQL 블록이 실행 된 후에도 Access 가능
§앞에 ‘ : ’ 를 사용하여 참조
§PRINT 명령을 사용하여 값 출력
§SET AUTOPRINT ON 기능을 사용해서 출력

EX)

 1)    

variable b_result number

begin

select (salary*12) + nvl(commission_pct,0) into :b_result

from employees

where employee_id = 100;

end;

/

print b_result

2)

variable b_emp_salary number

SET AUTOPRINT ON

begin

select salary into :b_emp_salary

from employees

where employee_id = 178;

end;

/

select last_name, salary from employees

where salary =:b_emp_salary;

 

 

 

 

 

 

 

 

 

 

 

사업자 정보 표시
(주)블루원 | 김홍태 | 서울특별시 용산구 원효로 4가 135 금홍 2빌딩 | 사업자 등록번호 : 106-86-76684 | TEL : 02-3272-7200 | Mail : support_ora@blueone.co.kr | 통신판매신고번호 : 호 | 사이버몰의 이용약관 바로가기

'DB - ORACLE > Oracle DB Admin ' 카테고리의 다른 글

4. PL/SQL 프로그램의 SQL문  (0) 2016.01.03
3. PL/SQL 실행문 작성  (0) 2016.01.03
1. PL/SQL 소개  (0) 2016.01.03
오라클 시노님(Synonym)  (0) 2016.01.03
오라클 집합쿼리  (0) 2016.01.03

+ Recent posts