메뉴 건너뛰기

2016.12.23 18:22

Create Procedure

조회 수 6012 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

MySQL 버전 : mysql-5.0.37

작성자 : 얼룩푸우(budget74@nate.com)

MySQL에서 Procedure를 만들어보자.

 

DELIMITER $$

CREATE PROCEDURE `owner`.`procedure_name` (IN|OUT|INOUT param_name TYPE )
BEGIN
         처리문

END$$

DELIMITER ;

 

owner 은 'user name'

procedure_name 은 말 그대로 '프로시져 이름'

IN|OUT|INOUT 은 파라미터를 어떤 용도로 사용할 것인지 정의한다.

              - IN 은 프로시져로 입력

              - OUT 은 출력

              - INOUT 은 입력하고 출력

param_name 은 파라미터 이름

TYPE 는 변수타입

 

ex)

아이디를 입력해서 회원의 이름을 가져오는 프로시져를 만들어 보자.

 

DELIMITER $$

CREATE PROCEDURE `tester`.`GET_USER_NAME` (IN userid VARCHAR(2), OUT userName VARCHAR(16) )
BEGIN
         SELECT user_name INTO userName FROM member WHERE user_id = userid;

END$$

DELIMITER ;

 

이제 사용해 보자

>CALL GET_USER_NAME('budget74', @userName);
>SELECT @userName;
결과 '얼룩푸우'

 

Procedure 내에서는 참조자(@)는 쓰지 않는다. 그러나 OUT 변수로 사용할때는 사용해준다.

또한 처리문에 ';' 는 반드시 찍어야 한다. 안 그럼 에러난다.


  1. No Image 26Mar
    by
    2021/03/26 Views 315 

    BEGIN, COMMIT, ROLLBACK

  2. binlog 조회 / 삭제 / 보관 기간 설정

  3. CASE 문법 사용 하기

  4. No Image 26Mar
    by
    2021/03/26 Views 129 

    column의 정보 중에서 column 설명(column_comment)

  5. No Image 23Dec
    by 조쉬
    2016/12/23 Views 6012 

    Create Procedure

  6. No Image 29Aug
    by
    2016/08/29 Views 6767 

    DB의 모든 테이블을 삭제하는 쿼리

  7. No Image 23Dec
    by
    2016/12/23 Views 5498 

    DISTINCT와 ALL

  8. No Image 23Dec
    by
    2016/12/23 Views 5788 

    Dump & Restore

  9. No Image 23Dec
    by
    2016/12/23 Views 5871 

    dump 를 db에 올릴때 인코딩 문제

  10. flush privileges 명령어

  11. FORMAT 문법 사용 하기(숫자 자리수 나타내기)

  12. No Image 26Mar
    by
    2021/03/26 Views 125 

    fulltext 관련 글

  13. No Image 26Mar
    by
    2021/03/26 Views 262 

    group by, distinct, count 를 이용한 겹치지 않는것의 개수

  14. No Image 26Mar
    by
    2021/03/26 Views 594 

    group by로 뽑아온 값중에 가장큰 값(max)의 상태값을 가져오기

  15. No Image 23Dec
    by
    2016/12/23 Views 5440 

    IMPORT

  16. No Image 23Dec
    by
    2016/12/23 Views 5809 

    IN 연산자

  17. No Image 18Jul
    by
    2018/07/18 Views 1675 

    InnoDB 스토리지 엔진에서 테이블의 최대 저장 row 개수

  18. No Image 23Dec
    by
    2016/12/23 Views 5536 

    InnoDB, MyISAM

  19. No Image 26Mar
    by
    2021/03/26 Views 247 

    LIMIT 속도 저하

  20. No Image 16Feb
    by
    2023/02/16 Views 139 

    MariaDB can't create test file lower-test

Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved