728x90 pl/sql5 [PL/SQL] 패키지, 커서 더보기 Day34. 230616 패키지 - 오라클 데이터베이스에 저장되어 있는 서로 관련있는 PL/SQL 프로지져와 함수들의 집합 커서 커서란? 특정 SQL 문장을 철한 결과를 담고있는 영역 - 암시적 커서 : 모든 DML과 PL/SQL SELECT문에 대해 선언된다. - 명시적 커서 : 프로그래머에 의해 선언되며 이름이 있는 커서이다. CURSOR 커서명 IS select문; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 CREATE OR REPLACE procedure dept_proc( p_deptno.. 2023. 6. 16. [PL/SQL] PL/SQL구성요소(상수),PL/SQL 제어문 더보기 Day34. 230616 PL/SQL구성요소 상수 한 번 값을 할당하면 변하지 않음. 상수명 CONSTANT 데이터타입 := 초기값; ex) v_num CONSTANT NUMBER:=10; PL/SQL 제어문 IF문 IF 조건1 THEN --조건1만족 실행코드 [ELSIF 조건2 THEN] --조건2만족 실행코드 [ELSIF 조건N THEN] --조건N만족 실행코드 [ELSE] 조건X 실행코드 END IF; 예1) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 DECLARE v_num1 NUMBER:=10; v_num2 NUMBER:=20; BEGIN IF v_num1 > v_num2 THEN DBMS_OUTPUT.PUT_LINE('조건1만족'); ELSIF v_num1 v_nu.. 2023. 6. 16. [PL/SQL] 예외(Exception),pragma 더보기 Day33. 230615 예외(Exception) - 컴파일할 때 문법적인 오류로 발생하는 컴파일 타임 오류와, 프로그램을 실행 할 때 발생하는 실행타임 오류로 구분할 수 있다. 예외처리 구문 EXCEPTION WHEN 예외명 1 THEN 예외처리 구문1 WHEN 예외명2 THEN 예외처리 구문2 ... WHEN OTHERS THEN 예외처리 구문n; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 CREATE OR REPLACE PROCEDURE update_sal_proc( p_empno IN emp.empno%TYPE, p_n IN number:=0 ) IS pragma autonomous_transaction; v_sal nu.. 2023. 6. 15. [PL/SQL] 사용자함수(FUNCTION) / 함수와 프로시저 비교 더보기 Day33. 230615 사용자함수(FUNCTION) - 보통 값을 계산하고 결과 값을 반환하기 위해서 함수를 많이 사용 - 대부분 구성이 프로시저와 유사 하지만 IN 파라미터만 사용가능 - 반드시 반환될 값의 데이터 타입을 RETURN문에 선언하고 PL/SQL블록 내에서 RETURN문을 통해서 반드시 값을 반환해야 함. 함수 생성 CREATE [OR REPLACE] FUNCTION 함수명(매개변수리스트) RETURN 데이터타입; IS[AS] [변수 선언 부분] BEGIN 실행부 RETURN 반환값; [EXCEPTION 예외처리부] END; 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 CREATE OR REPLACE FUNCTION update_.. 2023. 6. 15. [PL/SQL] PL/SQL BLOCK Structure 더보기 Day33. 230615 PL/SQL - Oracle’s Procedural Language extension to SQL의 약자 - SQL의 집합적 언어의 특징도 있고, 프로그래밍 언어처럼 변수에 값을 할당하고 예외처리도 할 수 있으며 특정 기능을 처리하는 함수나 프로시저를 만들 수 있는 기능을 제공해 절차적 처리도 가능. -> 복잡한 비지니스 로직을 처리할 때 돋보이는 존재. -> BLOCK 구조로 다수의 SQL 문을 한 번에 ORACLE DB로 보내서 처리하므로 수행속도를 향상 시킬수 있음. PL/SQL BLOCK Structure DECLARE -- 선언부 BEGIN -- 실행부 EXCEPTION --예외처리 END; 예) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1.. 2023. 6. 15. 이전 1 다음 728x90