설 연수
하하호홓
설 연수
전체 방문자
오늘
어제
  • 분류 전체보기 (231)
    • Back-End (2)
      • Java (20)
      • JSP (13)
      • Spring (18)
      • Kotlin (0)
      • node.js (0)
    • Front-End (68)
      • JavaScript (19)
      • jQuery (39)
      • Angular (4)
      • HTML (5)
    • Dev-Ops (12)
      • Linux, Cloud (5)
      • docker, k8s (5)
      • ElasticSeach (2)
    • Other (33)
      • OOP (3)
      • 알고리즘 (2)
      • DB (12)
      • Git (1)
      • Swift (4)
    • Backup (65)

블로그 메뉴

    공지사항

    인기 글

    태그

    • angular4
    • mongodb
    • angular callback
    • CORS
    • Kafka
    • Angular
    • 404 error
    • flex
    • MYSQL
    • RESTful
    • Redis
    • 크로스도메인
    • page not found
    • angular 콜백
    • 패스트캠퍼스
    • INVALID
    • jOOQ
    • jquery invalid
    • docker
    • angular2

    최근 댓글

    최근 글

    티스토리

    hELLO · Designed By 정상우.
    설 연수

    하하호홓

    Other/DB

    PL/SQL 프로시저 (procedure)

    2012. 8. 14. 15:31

    ■ 스토어드 프로시저(stored procedure)
    - 데이터베이스 내에 컴파일되어 저장된 프로시저
    - 데이터베이스에 저장된 프로시저는 오브젝트로 관리된다.
     
    ■ 프로시저를 사용하는 이유
    - 특정 문제나 작업을 해결하기 위해서 사용한다.
    - 특정기능을 담당하는 모듈(module)단위로 되어있다.
    - 재사용이 가능하다.
    - 스토어드 프로시저를 통해서만 데이터를 액세스할 수 있어 보안이 향상된다.
    - 프로시저는 공유된 메모리 자원을 이용한다.
     
    ■ 프로시저 생성                                                                                                                
     
    CREATE OR REPLACE PROCEDURE 프로시저이름
       IN argument
       OUT argument 
       IN OUT argument                  
    IS
      변수선언
    BEGIN
      PL/SQL Block -- SQL 문장, PL/SQL 제어문장
      EXCEPTION -- error가 발생할때 수행하는 문장(선택사항)
    END;
                                                                                                               
    - OR REPLACE : 프로시저가 이미 존재할 경우 덮어 쓴다. (항상 사용하는 것이 좋다)
    - IN : 호출되는 프로시저에 값을 전달
    - OUT :프로시저를 호출한 프로그램에게 값을 반환
    - IN OUT : IN+OUT, 프로시저에게 값을 전달하고 결과를 프로그램에게 반환
     
    ■ 프로시저 실행
    EXECUTE 프로시저이름(파라미터값);
     
    ■ 파라미터
    - 프로시저는 파라미터를 사용하여 정보를 전달한다.
    - 프로시저를 호출할 때는 프로시저의 파라미터에 대해 값을 전달해야 한다.
    - Actual Parameter : 프로시저에 전달된 파라미터(실제파라미터)
    - Internal or Formal Parameter : 프로시저 내부에 선언된 파라미트(내부 또는 형식파라미터)
    - Actual Parameter 의 데이터형과 Internal Parameter 의 데이터 형이 같아야 한다.
     
    ■ 프로시저 목록 확인
    SELECT object_name FROM user_objects WHERE object_type='PROCEDURE'; 
     
    ■ 프로시저 삭제
    DROP PROCEDURE 프로시저이름;
     
     
    EX                                                                                                   
     
    SQL> CREATE OR REPLACE PROCEDURE update_sal   -- 프로시저 생성
      2          /* IN  Parameter */
      3          (v_empno         IN    NUMBER)
      4         IS
      5     
      6     BEGIN
      7     
      8          UPDATE emp
      9         SET sal = sal  * 1.1
     10         WHERE empno = v_empno;
     11         COMMIT;
     12        
     13*        END update_sal;
     14  /
     
    SQL> execute update_sal(7934);  -- 프로시저 실행
    PL/SQL 처리가 정상적으로 완료되었습니다.
     
    SQL> select object_name, object_type from user_objects where object_type='PROCEDURE';  -- 프로시저 확인
    OBJECT_NAME
    --------------------------------------------------------------------------------
    OBJECT_TYPE
    -------------------
    UPDATE_SAL
    PROCEDURE
    EXPCURSOR_TEST
    PROCEDURE
    FORCURSOR_TEST
    PROCEDURE
     
                                                                                                                                                               
     
     
    http://blog.naver.com/urmyeternity/60042400822

    [출처] [PL/SQL] 프로시저 (procedure)|작성자 쥬

    저작자표시 (새창열림)

    'Other > DB' 카테고리의 다른 글

    Toad Editor 단축키  (0) 2012.08.20
    PL/SQL SQL PLUS상에서 STORED PROCEDURE 소스 확인 방법  (0) 2012.08.14
    MySQL : 해당 필드에 중복된 값 찾기  (0) 2012.06.15
    mysql - DATE_FORMAT & TIME_FORMAT  (1) 2012.06.12
    MySQL - auto_increment 1부터 시작  (0) 2012.05.15
      'Other/DB' 카테고리의 다른 글
      • Toad Editor 단축키
      • PL/SQL SQL PLUS상에서 STORED PROCEDURE 소스 확인 방법
      • MySQL : 해당 필드에 중복된 값 찾기
      • mysql - DATE_FORMAT & TIME_FORMAT
      설 연수
      설 연수

      티스토리툴바