pl/sql
PROCEDURE/FUNCTION , DB 프로그래밍 분야(SQL 숙련자들)
난이도가 높다
자바/JS 처럼 코딩하는 것을 말함
코딩 특징
제어문(조건문/반복문),변수/상수
소스
Oracle DB 에 저장된다.
장점
성능향상
< 1 >
※ 주의점
화면 출력 모드 변경 : ON (출력 켜기)
SET SERVEROUTPUT ON;
< 2 >
입력 받기
p_변수명 : 입력용 변수
v_변수명 : 단순 변수
ACCEPT 변수 prompt '입력창에 나올 문자열'
프로시저 코딩!!
선언부 : DECLARE
실행부 : BEGIN ~ END
DECLARE
-- 1) 선언부 : DECLARE
-- 변수 초기화 , 변수정의 : 숫자(NUMBER) , 문자(VARCAHR2) , 날짜 (DATE) [자료형]
-- 변수명 테이블명.컬럼명%TYPE : 해당 컬럼의 자료형을 참고
BEGIN
-- 2) 실행부 : BEGIN
-- 프로시저 코딩 : 업무 코딩(비지니스 로직 코딩 : 실무용어)
END;
/ -- 프로시저의 끝을 의미함
♠\ 참조 /♠
( 1 )
선언부
DECLARE
해당 컬럼의 자료형을 참고
변수명 테이블명.컬럼명%TYPE
( 2 )
실행부
BEGIN ~ END
입력값 변수
&변수명 사용
대입연산자
:=
화면에 한줄씩 출력하는 함수
dbms_output.put_line()
문자열 붙이기
문자열 || 문자열2 ...
( 예제 )
사원 테이블이 있다 치고
입력값을 받아 조회하기
SELECT 컬럼명 INTO 변수명 FROM 테이블 : 컬럼값 -> 변수로 저장됨
-- 입력값 : 7788
ACCEPT p_empno prompt '입력받은 사원 번호';
-- 프로시저 코딩
DECLARE
-- 1) 선언부
v_sal NUMBER(10);
BEGIN
-- 2) 실행부
-- SELECT 컬럼명 INTO 변수명 FROM 테이블 : 컬럼값 -> 변수로 저장됨
SELECT SALARY INTO v_sal FROM EMPLOYEE WHERE ENO = &p_empno;
-- 결과 출력
-- dbms_output.put_line() : 화면에 한줄씩 출력하는 함수
-- 문자열 붙이기 : 문자열 || 문자열2 ...
dbms_output.put_line('해당사원의 월급은 : ' || v_sal);
END;
/
'데이터베이스 > ORACLE_DB' 카테고리의 다른 글
Oracle_SQL - 프로시저 (PROCEDURE) - 배열 (CURSOR) , 반복문 (FOR) (0) | 2023.09.15 |
---|---|
Oracle_SQL - 프로시저 (PROCEDURE) - 조건문 (0) | 2023.09.15 |
Oracle_SQL - 뷰 (VIEW) (0) | 2023.09.14 |
Oracle_SQL - System Role (유저생성 , 권한부여 , 동의어) (0) | 2023.09.14 |
Oracle_SQL - 인덱스 (INDEX) (0) | 2023.09.14 |