IT/Oracle
PL/SQL
다날92
2018. 11. 18. 22:34
<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을 넣음.