justgo_developer

PL/SQL 본문

IT/Oracle

PL/SQL

다날92 2018. 11. 18. 22:34
728x90
반응형

<PL/SQL>

(Procedural Language/SQL)

: 오라클에서 제공하는 프로그래밍 언어

: 일반 프로그래밍 언어적인 요소를 다 가지고 있고, 데이터베이스 업무를 처리하기 위한 최적화된 언어


**기본구조**


- 선언부(Declare) : 모든 변수나 상수를 선언하는 부분

- 실행부(Executable) : begin ~ end / 제어문, 반복문, 함수정의 등의 로직을 기술하는 부분

- 예외처리부(Exception) : 실행 도중 에러발생시 해결하기 위한 명령들을 기술하는 부분


※ declare, begin, exception 키워드들은 ;을 붙이지 않음.

   나머지 문장들은 ;으로 처리

- 익명블록(anonymous PL/SQL Block) : 주로 1회성으로 사용할 경우 많이 사용된다.

- 저장블록(stored PL/SQL Block) : 서버에 저장해놓고 주기적으로 반복해서 사용할 경우 사용된다. -> 프로시저에 저장해놓고 사용


examlple)


1
2
3
4
5
6
7
8
9
10
declare
    cnt interger; /* 변수 선언*/
begin
    cnt := cnt+1/*1씩 증가*/
    
    if cnt is null then
        dbms_output.put_line("결과 : cnt는 널이다"); /*화면 출력/*
    end if;
end;
/
cs

/ 는 실행명령어


dbms_output.put_line 명령어를 사용하기위해 미리 set serveroutput on; 실행




1
2
3
4
5
6
7
8
9
10
11
declare
    empNo number(20);
    empName varchar2(10);
begin
    select employee_id, first_name into empNo, empName
    from employees
    where employee_id = 124;
    dbms_output.put_line(empNo || '' || empName);
end;
/
 
cs


employee_id를 empNo에 넣고, first_name을 empNmae을 넣음.



728x90
반응형

'IT > Oracle' 카테고리의 다른 글

View(뷰)  (0) 2018.11.22
시퀀스(Sequence)  (0) 2018.11.22
계층형쿼리  (0) 2018.11.18
무결성 제약조건  (0) 2018.10.27
DML(Data Manipulation Language) : select문, delete문, insert문, update문  (0) 2018.10.21