MySQL Stored Program   MySQL 저장 프로그램

(2017-08-21)
1. MySQL Stored Program

  ㅇ 나중에 절차적으로 실행할 수 있도록 서버 측에 저장되는 프로그램들을 총칭
     - Stored Function  : 수식에 사용되며 계산결과 값 만을 반환
     - Stored Procedure : 결과 세트를 생성 및 반환
     - Trigger          : 테이블이 INSERT,DELETE,UPDATE 될 때에 만 실행됨
     - Event            : 스케줄러에 저장되고 시간에 의해 실행됨

  ㅇ 모두 동일한 문법으로 작성 처리됨

  ㅇ 실행 방법
     - 저장 함수 실행        : `SELECT 문` 내에서 호출 실행
     - 저장 프로시저 실행    : `CALL 프로시저명;`으로 호출 실행
     - 이벤트 실행           : `이벤트 스케줄러`를 가동시켜 그에의해 실행

     * 외부 텍스트파일 *.sql 실행 : SOURCE 외부파일명; 

  ㅇ 현재 등록된 Procedure/Function 확인 방법 
     - Stored Procedure : SHOW PROCEDURE STATUS;
     - Stored Function  : SHOW FUNCTION STATUS;


2. Event 및 Event Scheduler이벤트 스케줄러 가동 여부 확인 : SHOW VARIABLES LIKE 'event_scheduler';
  ㅇ 서버 기동시 강제 가동          : (my.ini 또는 my.cnf) [mysqld] event_scheduler = ON
  ㅇ 시스템 변수에 의한 가동        : SET GLOBAL EVENT_SCHEDULER = ON;
  ㅇ 현재 등록된 이벤트 확인        : show events;


3. 주요 문법주석 (comment) : /* */, #, -- (3 가지)

  ㅇ 제어문
     - IF
IF expression THEN commands
[ELSEIF expression THEN commands ....]
[ELSE commands]
END IF;
- CASE 문
CASE expression
    WHEN value THEN statements
    [WHEN value THEN statements]
    [WHEN value THEN statements]
    .
    .
    [ELSE statements]
END CASE;
반복문 - LOOP ~ END (빠져나가기 : LEAVE, 처음으로가기 : ITERATE) - REPEAT ~ UNTIL - WHILE ㅇ CURSOR - 1 이상의 결과 set를 return 하기 위해 사용 - DECLARE cname CURSOR FOR SELECT ... . OPEN : 커서를 사용하기 위해 fetch 전에 반드시 처리 . FETCH : 커서가 다음 row 로 이동 . CLOSE : 커서를 닫아줌


[MySQL] 1. MySQL 2. MySQL 서버 3. 저장 프로그램 4. 문자 세트 5. MySQL 활용 (기타) 6. MySQL 백업
  1.   기술공통
  2.   기초과학
  3.   파동/광학/음향
  4.   방송/멀티미디어/정보이론
  5.   전자/전기/제어
  6.   통신/네트워킹
  7.   정보기술(IT)
        1. 정보기술
    1.   전산기초
    2.   컴퓨터구조
    3.   프로그래밍
    4.   데이터베이스
          1. DB
      1.   데이터베이스 기초
      2.   관계형데이터베이스
            1. 관계형 데이터베이스
            2. 관계DB 주요 용어
            3. 관계(relation)
            4. 튜플
            5. 관계 대수
        1.   SQL
        2.   MySQL
          1.   1. MySQL
              2. MySQL 서버
              3. 저장 프로그램
              4. 문자 세트
              5. MySQL 활용 (기타)
              6. MySQL 백업
      3.   DB 모델링/설계
      4.   회복,병행제어
      5.   데이터웨어하우스
      6.   데이터베이스(기타일반)
    5.   소프트웨어 공학
    6.   운영체제
    7.   정보보호/보안
    8.   IT 기타기술
  8.   기계/재료/공업일반
  9.   표준/계측/품질
  10.   기술경영

 
        최근수정     모바일웹     참고문헌