[DB] Cursor 1. 커서(Cursor)란? 커서는 Private SQL의 작업 영역이다. 오라클 서버에 의해 실행되는 SQL문은 연관된 각각의 커서를 소유하고 있다. 커서의 종류 - 암시적 커서 : 모든 DML과 PL/SQL SELECT문에 대해 자동 선언된다. - 명시적 커서 : 프로그래머에 의해 선언되며, 이름이 있는 커서이다. 2. 암시적 커서(Implicit Cursor) 암시적 커서는 Oracle이나 PL/SQL 실행 메커니즘에 의해 SQL 문장이 처리되는 곳에 대한 익명의 주소이다. Oracle에서 실행되는 모든 SQL문에는 암시적 커서가 생성되며, 커서 속성을 사용할 수 있다. 암시적 커서는 OPEN과 CLOSE가 자동으로 실행된다. 암시적 커서의 속성 - SQL%ISOPEN : 암시적 커서가 열려 있는지.. 2023. 1. 18. [DB] Function & Procedure & Trigger (Oracle) 1. Function (함수) 보통 값을 계산하고 결과 값을 반환하기 위해서 함수를 많이 사용 한다. 대부분 구성이 프로시저와 유사 하지만 IN 파라미터만 사용 할 수 있다. 반드시 반환 될 값의 데이터 타입을 RETURN문에 선언해야 한다. 또한 PL/SQL블록 내에서 RETURN문을 통해서 반드시 값을 반환해야 한다. Function 문법 -- PL/SQL Block에는 적어도 한 개의 RETURN 문이 있어야 한다. -- PL/SQL Block은 함수가 수행 할 내용을 정의한 몸체부분이다. CREATE OR REPLACE FUNCTION function name -- 선택 [argument] RETURN datatype -- datatype은 반환되는 값의 datatype이다. IS [변수 선언] .. 2023. 1. 14. [DB] PL/SQL 기초 (Oracle) 1. PL/SQL 이란? PL/SQL은 Oracle's Procedural Language extension to SQL 의 약자로, RDBMS인 오라클에서 SQL 언어를 확장하기 위해 사용하는 컴퓨터 프로그래밍 언어 중 하나이다. SQL 문장에서 변수 정의, 조건문(IF) 처리, 반복문(LOOP, WHILE, FOR) 처리 등을 지원하는 오라클 자체의 내장 Procedure Language이다. DECLARE 문을 이용하여 정의되며, 선언문의 사용은 선택 사항이다. 블록 구조로 되어 있으며, PL/SQL 자신이 컴파일 엔진을 가지고 있다. 2. PL/SQL 의 장점 PL/SQL 문은 BLOCK 구조로 다수의 SQL 문을 한번에 DB로 보내서 처리하여 수행 속도를 향상 시킨다. PL/SQL 의 모든 요소.. 2023. 1. 13. [DB] Table Join (Oracle) 1. Table Join 둘 이상의 테이블을 연결하여 데이터를 검색하는 방법. 일반적으로 테이블의 식별 값인 Primary Key와 테이블 간 공통 값인 Foreign Key 값을 사용하여 연결한다. Inner Join SELECT [컬럼명] FROM [테이블A] a, [테이블B] b WHERE a.조인키컬럼 = b.조인키컬럼 ; Left-Outer Join SELECT [컬럼명] FROM [테이블A] a, [테이블B] b WHERE a.조인키컬럼 = b.조인키컬럼(+) ; Right-Outer Join SELECT [컬럼명] FROM [테이블A] a, [테이블B] b WHERE a.조인키컬럼(+) = b.조인키컬럼 ; Full-Outer Join SELECT [컬럼명] FROM [테이블A] a FULL.. 2023. 1. 9. [DB] Optimizer & SQL 힌트문 (Oracle) 1. 옵티마이저(Optimizer)란? SQL을 가장 빠르고 효율적으로 수행할 최적(최저비용)의 처리경로를 생성해 주는 DMBS 내부의 핵심엔진이다. 옵티마이저 종류 RULE BASE OPTIMIZER - 15규칙*에 순서에 따라 실행계획을 가져가는 방식이다. => 수동카메라, 개발자가 본인의 의도대로 조작이 가능하다. COST BASE OPTIMIZER - 데이터의 분포도와 통계자료를 바탕으로 실행계획을 가져가는 방식으로, 데이터의 분포도를 항상 최신화 해놓아야 한다. => 자동카메라, 효과적인 실행 계획을 가져갈 확률이 높다. 2. SQL 힌트문 (Oracle) 힌트문은 SQL 튜닝의 핵심이다. RBO가 항상 최적의 실행을 하는 것은 아니기 때문에 사용자가 더 나은 계획을 알고 있다면, 힌트문을 통해.. 2023. 1. 5. 이전 1 다음 반응형