📃 DATABASE/ORACLE

    [PL/SQL] 프로시저(PROCEDURE)

    [PL/SQL] 프로시저(PROCEDURE)

    수정 이력 2022.08.20 song님 댓글로 아래 내용 제거(특정한 로직을 처리하기만 하고 결과 값을 반환하지 않는 서브 프로그램이다.) 프로시저(PROCEDURE) 특정한 로직을 처리하기만 하고 결과 값을 반환하지 않는 서브 프로그램이다. 테이블에서 데이터를 추출해 조작하고 그 결과를 다른 테이블에 다시 저장하거나 갱신하는 일련의 처리를 할 때 주로 프로시저를 사용한다. 생성 1 2 3 4 5 6 7 8 9 10 11 12 13 CREATE OR REPLACE PROCEDURE 프로시저명 (매개변수명1 [IN | OUT | IN OUT] 데이터타입 [:= 디폴트값] ,매개변수명2 [IN | OUT | IN OUT] 데이터타입 [:= 디폴트값] ... ) IS[AS] 변수, 상수 등 선언 BEGIN ..

    [PL/SQL] 사용자 정의함수

    [PL/SQL] 사용자 정의함수

    사용자 정의함수 구조1234567891011CREATE OR REPLACE FUNCTION 함수명 (매개변수1, 매개변수2, ...)RETURN 데이터타입IS[AS] 변수, 상수 등 선언BEGIN 실행부 RETURN 반환값;[EXCEPTION 예외처리부]END 함수명;Colored by Color Scriptercs CREATE OR REPLACE FUNCTION 최초 함수를 만들고나서 수정을 하더라도 계속 컴파일할 수 있고 마지막으로 수정된 최종본이 반영된다.매개변수 "매개변수명 데이터타입" 형태로 명시한다. 생략가능RETURN 데이터타입 함수가 반환할 데이터 타입을 정한다.RETURN 반환값 특정 연산을 진행한 후 반환할 값을 명시한다. 예제1234567891011CREATE OR REPLACE FU..

    [PL/SQL] 반복문

    [PL/SQL] 반복문

    LOOP문PL/SQL의 기본적인 반복문. EXIT를 누락시키면 무한루프에 빠지니 주의해야한다.1234LOOP 처리문; EXIT [WHEN 조건]END LOOP;cs 예제123456789101112DECLARE VN_BASE_NUM NUMBER := 3; VN_CNT NUMBER := 1;BEGIN LOOP DBMS_OUTPUT.PUT_LINE(VN_BASE_NUM || '*' || VN_CNT || '=' || VN_BASE_NUM * VN_CNT); VN_CNT := VN_CNT + 1; EXIT WHEN VN_CNT > 9; END LOOP;END;Colored by Color Scriptercs WHILE문LOOP와 비슷하나 WHILE 뒤에 조건을 붙여, 해당 조건을 만족할 때 반복한다.1234WH..

    [PL/SQL] IF문 / CASE문

    [PL/SQL] IF문 / CASE문

    IF문특정 조건에 따라 처리하는 조건문의 대표적인것조건이 한 개일때123IF 조건 THEN 조건처리;END IF;cs조건이 두 개일때12345IF 조건 THEN 조건처리;ELSE 조건처리;END IF;cs조건이 여러 개일때12345678IF 조건 THEN 조건처리;ELSIF 조건2 THEN 조건처리; ...ELSE 조건처리N;END IF;cs 예제12345678910DECLARE VN_NUM1 NUMBER := 1; VN_NUM2 NUMBER := 2;BEGIN IF VN_NUM1 >= VN_NUM2 THEN DBMS_OUTPUT.PUT_LINE(VN_NUM1 || '이 큰 수'); ELSE DBMS_OUTPUT.PUT_LINE(VN_NUM2 || '이 큰 수'); END IF;END;Colored by..

    [PL/SQL] PL/SQL 기초

    [PL/SQL] PL/SQL 기초

    PL/SQL 기초 블록PL/SQL 소스 프로그램의 기본단위. 선언부, 실행부, 예외처리부로 구성된다.- 이름없는 블록 : 익명 블록- 이름있는 블록 : 함수, 프로시저, 패키지 등 구조12345678이름부IS(AS) 선언부BEGIN 실행부EXCEPTION 예외처리부END;cs 이름부블록의 명칭이 오는데, 생략하게되면 익명 블록이 된다.선언부DECLARE로 시작되며, 실행부와 예외처리부에서 사용할 각종 변수, 상수, 커서 등을 선언한다. 중요한 점은 변수 선언이나 실행부와 예외처리부에서 사용하는 각종 문장의 끝에 반드시 세미콜론이 붙어야한다는 것이다. 사용할 변수나 상수가 없다면 생략할 수 있다.실행부실제 로직을 처리하는 부분. 각종 문장(일반 쿼리문, 조건문, 반복문 등)이 올 수 있고, 비즈니스 로직을..

    [SQL] 다중 테이블 INSERT

    [SQL] 다중 테이블 INSERT

    다중 테이블 INSERT여러개의 테이블에 멀티 로우를 삽입할 때 사용한다. 구문12345678INSERT ALL | FIRSTWHEN 조건1 THEN INTO [스키마].테이블명(컬럼1, 컬럼2, ...) VALUES (값1, 값2, ...)WHEN 조건2 THEN INTO [스키마].테이블명(컬럼1, 컬럼2, ...) VALUES (값1, 값2, ...) ...ELSE INTO [스키마].테이블명(컬럼1, 컬럼2, ...) VALUES (값1, 값2, ...)SELECT 문;Colored by Color Scriptercs ALL디폴트 값. 이후 WHEN 조건절을 명시했을 때, 각 조건이 맞으면 INSERT를 모두 수행하라는 의미FIRST이후 WHEN 절 조건식에 따른 INSERT 문을 수행할 때, 서..

반응형