• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL5.6 한글메뉴얼) [close]
  • 1. MySQL 5.6 새로운 기능
  • 2. MySQL 설치 및 업그레이드
  • 3. MySQL Tutorial
  • 4. MySQL 프로그램
  • 5. MySQL 서버관리
  • 6. 보안
  • 7. 백업 및 복구
  • 8. 최적화
  • 9. Language Structure(언어구조)
  • 10. Character Sets(Globalization)
  • 11. 데이터형(Data Types)
  • 12. 함수와 연산자
  • 13. SQL 문법
  • 14. InnoDB 스토리지 엔진
  • 15. 기타 스토리지 엔진
  • 16. 고가용성 및 확장성
  • 17. 리플리케이션
  • 18. MySQL Cluster
  • 19. 파티셔닝
  • 20. Stored Programs and Views
  • 1. Stored Programs 정의
    2. 스토어드 루틴 (프로시저 및 함수)의 사용
    1. 스토어드 루틴 구문
    2. 스토어드 루틴과 MySQL 권한
    3. 스토어드 루틴 Metadata
    4. Stored Procedures, Functions, Triggers, and LAST_INSERT_ID()
    3. 트리거 사용
    4. Event Scheduler 사용
    5. Views 사용
    6. Stored Programs 및 Views 액세스 제어
    7. Stored Programs의 Binary Logging
  • 21. INFORMATION_SCHEMA
  • 22. PERFORMANCE SCHEMA
  • 23. 컨넥터 및 API
  • 24. MySQL 확장
  • 25. MySQL Enterprise Edition
  • 26. MySQL Workbench
  • 27. 제약 및 제한
  • 28. MySQL 5.7 새로운 기능

20.2 스토어드 루틴 (프로시저 및 함수)의 사용

20.2.1 스토어드 루틴 구문
20.2.2 스토어드 루틴과 MySQL 권한
20.2.3 스토어드 루틴의 메타 데이터
20.2.4 저장 프로 시저, 함수, 트리거 및 LAST_INSERT_ID()

스토어드 루틴 (프로 시저 및 함수)은 MySQL 5.6에서 지원됩니다. 스토어드 루틴은 서버에 저장할 수있는 일련의 SQL 문입니다. 이 작업을 수행하는 클라이언트는 개별 명령문을 반복 실행을 계속 필요는없고, 대신 스토어드 루틴을 참조 할 수 있습니다.

스토어드 루틴은 mysql 데이터베이스의 proc 테이블이 필요합니다. 이 테이블은 MySQL 5.6 설치 절차 중에 작성됩니다. 이전 버전에서 MySQL 5.6으로 업그레이드하는 경우 반드시 부여 테이블을 업데이트하여 proc 테이블의 존재를 확인하십시오. 섹션 4.4.7 "mysql_upgrade - MySQL 테이블 체크 및 업그레이드" 를 참조하십시오.

스토어드 루틴은 특히 다음과 같은 특정 상황에서 도움이됩니다.

  • 클라이언트 응용 프로그램이 다른 언어로 작성되어 있거나 다른 플랫폼에서 동작하고 있지만 동일한 데이터베이스 작업을 수행 할 필요가있는 경우.

  • 보안이 가장 중요한 경우. 예를 들어, 은행에서는 모든 일반적인 작업에 대해 저장 프로 시저 및 저장 기능을 사용합니다. 이에 따라 일관된 보안 환경을 제공 루틴에 의해 각각의 조작이 올바르게 기록되도록합니다. 이러한 설정은 응용 프로그램 및 사용자는 데이터베이스 테이블에 직접 액세스 할 수 없지만, 특정 스토어드 루틴을 실행할 수 있습니다.

스토어드 루틴은 서버와 클라이언트간에 전송해야하는 정보가 적어 지므로 성능을 높일 수 있습니다. 그 트레이드 오프는이를 통해 서버 측에서 수행하는 작업이 많아 클라이언트 (애플리케이션)상에서 이루어지는 작업이 줄어들 기 때문에 데이터베이스 서버의로드가 증가합니다. 하나 또는 소수의 데이터베이스 서버에서만 다수의 클라이언트 시스템 (Web 서버 등)에 서비스를 제공하는 경우에는이를 검토하십시오.

스토어드 루틴을 사용하면 데이터베이스 서버에서 함수 라이브러리를 보유 할 수 있습니다. 이것은 내부적으로 (예를 들어 클래스를 사용하여) 이런 설계를 가능하게하는 현대의 응용 프로그램 언어에서 공유되는 기능입니다. 이러한 클라이언트 응용 프로그램의 언어 기능을 사용하면 데이터베이스 사용의 범위 밖에서도 프로그래머 이점이 있습니다.

MySQL은 스토어드 루틴에 대해 SQL : 2003 구문을 따르며, 이것은 IBM의 DB2에서도 사용되고 있습니다. 여기서 설명하는 모든 구문이 지원되며, 모든 제한 사항 및 확장이 적절히 문서화되고 있습니다.

추가 리소스

  • 저장 프로 시저 및 저장 기능을 상대 할 때는 저장 프로 시저의 사용자 포럼 이 도움이됩니다.

  • MySQL의 저장 루틴에 대한 자주 묻는 질문과 답변 내용은 섹션 A.4 "MySQL 5.6 FAQ : 저장 프로 시저 및 저장 함수" 를 참조하십시오.

  • 스토어드 루틴의 사용에는 몇 가지 제한이 있습니다. 섹션 D.1 "저장 프로그램 제한 사항" 을 참조하십시오.

  • 스토어드 루틴의 바이너리 로깅은 섹션 20.7 "저장 프로그램의 바이너리 로깅" 에서 설명한대로 이루어집니다.


서울시 강남구 영동대로 602 6층
TEL: 02-6061-0006  /  E: csr@mysqlkorea.com
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved