▣ SQL : Database/PL SQL💾

    [PL/SQL] PL/SQL 명명 규칙 [변수, 상수, 매개변수, 함수, 프로시저의 명명법]

    - PL/SQL 명명 규칙 "이렇게 지어야 한다"라는 규칙은 없으나, 이름을 잘 짓는다면 프로그램의 가독성을 높일 수 있다. 변수 variable의 맨 앞 글자인 v + 데이터타입의 앞 글자(문자는 s, 숫자는 n, 날짜는 d) + 변수 설명(테이블 컬럼 값을 사용할 때는 컬럼명) ex) vs_emp_name, vn_employee_id, nd_hire_date 상수 constant의 맨 앞 글자인 c + 나머지는 변수와 동일 ex) cn_pi (파이 값), cn_inch_to_member (인치를 미터로 변환하는 상수) 매개변수 parameter의 맨 앞 글자인 p + 나머지는 변수와 동일 ex) pn_employee_id, pn_salary, pd_retire_date 함수 get(값을 가져오므로) ..

    [PL/SQL] PL/SQL 핵심 정리 [PL/SQL의 구조와 구성요소 및 제어문, 함수, 프로시저]

    1. PL/SQL의 구조와 구성요소 PL/SQL의 가장 작은 프로그램 단위를 블록이라고 한다. 이름이 없는 블록을 익명 블록이라 하고, 나머지 이름이 있는 블록에는 함수, 프로시저, 패키지 등이 있다. PL/SQL 블록은 선언부, 실행부, 예외 처리부로 구성되는데, 선언부와 예외 처리부는 생략이 가능하다. 선언부에서는 변수와 상수, 커서 등을 선언할 수 있다. 변수는 선언할 때 초기화가 가능하다. 상수는 선언 시 반드시 초기화해야 하며, 한번 초기화한 상수는 변경할 수 없다. 테이블의 컬럼과 연계된 변수나 상수 선언 시 %TYPE 키워드를 사용하면 자동으로 데이터 타입을 맞출 수 있다. PL/SQL 블록에서는 SQL에서 사용된 모든 데이터 타입과 연산자를 사용할 수 있다. 2. PL/SQL 제어문, 함수..

    [PL/SQL] PL/SQL 프로시저(Procedure) [프로시저 정의, PL/SQL 프로시저 생성 및 실행]

    1. 프로시저(Procedure)란? 특정한 로직을 처리하기만 하고 결과 값을 반환하지는 않는 서브 프로그램 → 테이블에서 데이터를 추출해 입맛에 맞게 조작하고 그 결과를 다른 테이블에 다시 저장하거나 갱신하는 일련의 처리를 할 때 주로 사용 2. PL/SQL 프로시저 생성 CREATE OR REPLACE PROCEDURE 프로시저 이름 (매개변수명1 [IN |OUT |IN OUT] 데이터타입[:=디폴트값], 매개변수명2 [IN |OUT |IN OUT] 데이터타입[:=디폴트값], … ) IS[AS] 변수, 상수 등 선언 BEGIN 실행부 [EXCEPTION 예외 처리부] END [프로시저 이름]; * 매개변수에서 IN은 입력, OUT은 출력, IN OUT은 입력과 출력을 동시에 한다는 의미다. OUT 매..

    [PL/SQL] PL/SQL 사용자 정의 함수 [PL/SQL 사용자 정의 함수 생성 및 호출]

    1. 사용자 정의 함수 생성 CREATE OR REPLACE FUNCTION 함수이름 -- (1) (매개변수1, 매개변수2, … ) -- (2) RETURN 데이터타입 -- (3) IS[AS] 변수, 상수 등 선언 BEGIN 실행부 RETURN 반환값; -- (4) [EXCEPTION 예외 처리부] END [함수 이름]; ① CREATE OR REPLACE FUNCTION : 함수를 생성한다.(해당 구문으로 수정도 가능하다.) ② 매개변수 : "매개변수명 데이터타입" 형태로 명시하며, 매개변수는 생략할 수 있다. ③ RETURN 데이터타입 : 함수가 반환할 데이터 타입을 지정한다. ④ RETURN 반환값 : 매개변수를 받아 특정 연산을 수행한 후 반환할 값을 명시한다. - 예제) 나머지 구하는 함수, M..

    [PL/SQL] PL/SQL 제어문 : CONTINUE, NULL [특정 조건 건너뛰기, 아무것도 처리하지 않기]

    1. CONTINUE문 CONTINUE문은 반복문 내에서 특정 조건에 부합할 때 처리 로직을 건너뛰고 루프 조건으로 다시 넘어간다. - EXIT와 차이점 EXIT : 루프를 완전히 빠져나온다. CONTINUE : 조건절로 다시 넘어간다. - CONTINUE문 예제 BEGIN FOR I IN 1..5 LOOP CONTINUE WHEN I = 3; DBMS_OUTPUT.PUT_LINE(I); END LOOP; END; / 2. NULL문 NULL문은 아무것도 처리하지 않는 문장이다. → 주로 작성한 모든 조건에 부합되지 않아 아무것도 처리하지 않고 싶은 경우 사용한다. IF vn_variable = 'A' THEN 처리 로직1; ELSIF vn_variable = 'B' THEN 처리 로직2; … ELSE ..