공부/My SQL
뷰, 스토어드 프로시저, 트리거
딸기버블티
2020. 12. 12. 19:05
> 뷰 생성
1
2
3
|
CREATE VIEW 뷰이름
AS
SELECT * FROM 뷰에 넣을테이블 ;
|
cs |
어느 테이블에서 SELECT 해서 뷰이름이라는 VIEW 를 생성한다. (테이블 데이터 그대로 복사된다)
> 스토어드 프로시저
스토어드 프로시저란 여러 SQL 문을 하나로 묶어서 편리하게 사용하는 기능이다.
SQL 뿐만 아니라 다른 프로그래밍 언어와 같은 기능을 담당할 수도 있다.
1
2
3
4
5
|
CREATE PROCEDURE 프로시져이름()
BEGIN
SELECT * FROM 테이블;
SELECT * FROM 테이블2;
END
|
cs |
BEGIN 과 END 사이에 있는 쿼리문으로 프로시저를 생성한다.
프로시저 호출은
1
|
CALL 프로시져이름();
|
cs |
위와 같이 CALL 을 써서 호출한다.
> 트리거
트리거란 테이블에 부착되어 테이블에 INSERT나 UPDATE 또는 DELETED 작업이 발생되면 실행되는 코드이다.
간단한 트리거 예시
1
2
3
4
5
6
7
8
9
10
|
DELIMITER //
CREATE TRIGGER trg_deletedMemberTBL -- 트리거 이름
AFTER DELETE -- 삭제 후에 작동하게 지정
ON memberTBL -- 테이블명
FOR EACH ROW -- 각 행마다 적용시킴
BEGIN
INSERT INTO deletedMemberTBL
VALUES (OLD.memberID, OLD.memberName, OLD.memberAddress, CURDATE() );
END //
DELIMITER ;
|
trg_deletedMemberTBL 이라는 트리거를 생성한다.
이 트리거는 memberTBL 에서 데이터가 삭제될때마다 실행된다.
memberTBL 에서 데이터가 삭제되면 이 데이터를 deletedMemberTBL 테이블에 Insert 한다.