프로시저 생성 [형식]

*생성 또는 대체해라(있으면 REPLACE) 프로시저를
CREATE [OR REPLACE] PROCEDURE [*프로시저 이름넣는 곳]
    (

     argument1 [mode] data_type,
     argument2 [mode] data_type....   

    )

 

예)

    (

      (매개변수): 프로그램과 값을 주고받는 역할, 

      프로시저로 값을 전달하는 IN

      , 프로시저에서 실행환경으로 값을 전달하는 OUT

      ,  양쪽으로 전달하는 INOUT 3가지 종류

     

      *매개변수가 없으면 이렇게 선언

      v_test VARCHAR2(10);

      v_test DATE; 

 

      *매개변수를 써야하면 이렇게 선언

      v_test IN VARCHAR

      p_test OUT VARCHAR2 

      

      *여기서 데이터 타입을 특정 테이블의 컬럼 데이터로 줄수 있다.

      v_name IN testTable.user_name%TYPE

    )


IS [OR AS
    local_variable declaration

   

    *지역변수 선언
     v_username varchar2(50);
     v_cnt product.qty%type;

 


BEGIN


    statement1;
    statement2;
    ..

     *본문구성 (작성중)....

       업데이트 할게요 
END;
/

 

 

 

 

 

프로시저, 함수, 트리거, 커서 간단개념은 아래링크에서....

 

https://mo-world.tistory.com/entry/%EB%88%88%EC%97%90%ED%99%95-%ED%94%84%EB%A1%9C%EC%8B%9C%EC%A0%80-%ED%95%A8%EC%88%98-%ED%8A%B8%EB%A6%AC%EA%B1%B0-%EC%BB%A4%EC%84%9C-%EA%B0%9C%EB%85%90

프로시저

*리턴 값이 필요없고, 각각의 절차적 쿼리를 순차적으로 일괄 진행하기 위해 사용하지만

 리턴하고 싶다면 리턴 할수는 있음

 

함수

*내장함수가 제공하지 않은 사용자가 원하는 함수를 만들어 쓸 수 있으며, 주로 함수의 결과

 리턴 값을 받아쓰기 위해 사용한다. 

 

트리거

*테이블의 특정 동작이 일어나면 자동실행(테이블의 DML문이 작동되면 자동으로 실행)

 

커서

*결과의 로우수는 하나 이상인데, 개별로우에 순차적으로 접근하여 가공하거나 저장해서

 쓰려고 할 때 사용 

 

+ Recent posts