반응형
MySQL DBMS가 없다면 아래를 통해 설치한다.
https://ansan-survivor.tistory.com/1130
아래 View로 만든 테이블 정보를 바탕으로 테스트.
https://ansan-survivor.tistory.com/1153
Procedure(프로시져)는 SQL 명령어로 실행시킨 일련의 명령 집합을 하나로 묶어 함수화 시킨다고 보면 된다.
아래 직원이 View 테이블에서 Computer와 TV의 가격정보를 빼온다고 본다.
아래 쿼리문을 돌리면 두개의 결과값이 나온다.
그런데 이 찾는 쿼리가 만약 2개가 아니고 100만개라면? 자주 써야 한다면? 완전 노가다가 될 것이다.
한번에 하나 만들어놓고 이후에는 계속 가져다 쓰는게 유리하다.
그래서 프로시져를 만든다.
<프로시져 만들기>
프로시져는 앞과 뒤에 아래와 같은 프레임을 만든다.
DELIMITER //
CREATE PROCEDURE 프로시져이름()
BEGIN
~~~
~~~
~~~
...
END
// DELIMITER ;
1. 프로시져 생성
DELIMITER //
CREATE PROCEDURE myProc()
BEGIN
SELECT * FROM user_viewTable WHERE type = 'Computer';
SELECT * FROM user_viewTable WHERE type = 'TV';
END
// DELIMITER ;
2. 생성한 프로시져 콜하기
이제 myProc()의 begin과 end 사이에 구문이 함수 호출만으로 실행된다.
CALL myProc() ;
(결과) myProc()는 Stored Procedures에 저장되었다. CALL로 호출해서 사용 가능하다.
반응형
'DB관련 > MySQL' 카테고리의 다른 글
[MySQL] DBMS Workbench Database (db) 백업 및 복원 (0) | 2022.01.04 |
---|---|
[MySQL] 트리거(Trigger)란? 트리거 사용 예제 (0) | 2021.12.31 |
[MySQL] 뷰(view)란? 뷰 생성하기 (0) | 2021.12.30 |
[MySQL] MySQL Workbench에서 Result Grid가 보이지 않을 때. (0) | 2021.12.30 |
[MySQL] 오라클 DBMS MySQL Workbench, 테이블 생성 후 다른 Database 테이블 불러오기 (0) | 2021.12.28 |