메뉴 건너뛰기

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

단축키

Prev이전 문서

Next다음 문서

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

단축키

Prev이전 문서

Next다음 문서

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
트리거 중첩트리거 
 
use shopdb;
 
 
create table orderTbl    - -구매 테이블
(orderNo Int AUTO_INCREMENT PRIMARY key,
userID VARCHAR(5),
prodName VARCHAR(5),
orderamount int
);
 
 
 
CREATE TABLE prodTbl  --물품테이블
( prodName VARCHAR(5),
    ACCOUNT int);
    
    
 create table deliverTbl(    --배송테이블 
 deliverNo INT AUTO_INCREMENT PRIMARY KEY,
 PRODNAME VARCHAR(5),
 ACCOUNT INT UNIQUE
 );  
 
 
 INSERT INTO prodTbl values('apple',100);
 INSERT INTO prodTbl values('tomat',100);
 INSERT INTO prodTbl values('pine',100);
 
 --  주문테이블에 insert 되면 상품테이블에 update가 발생하는 트리거 
 
 drop trigger if exists orderTrg;
 DELIMITER //
 CREATE TRIGGER orderTrg
    AFTER INSERT
    ON orderTbl
   FOR EACH ROW
    BEGIN
        UPDATE prodTbl SET ACCOUNT = ACCOUNT - NEW.orderamount
        where PRODNAME = new.PRODNAME;
 END //
 DELIMITER ;
 
 -- 상품테이블에 update가 발생하면 발송테이블에 insert가 발생
 
 DROP TRIGGER IF EXISTS prodTrg;
 DELIMITER //
 CREATE TRIGGER prodTrg
 AFTER UPDATE
 ON prodtbl
 FOR EACH ROW
 
 BEGIN
    DECLARE orderamount int;
    
    set orderamount = old.account - new.account;
    INSERT into deliverTbl(prodName,account) values(new.prodName,orderamount);
    
END //
DELIMITER ;
 
 
 INSERT INTO orderTbl VALUES(NULL,'JONE','apple',10);
 
 
 select * from prodTbl;
 select * from deliverTbl;
 
cs

 


  1. No Image 18Jul
    by
    2018/07/18 Views 1941 

    MySQL 마스터/마스터 replication 에서 AUTO_INCREMENT 문제 해결 방법

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

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

  3. No Image 18Jul
    by
    2018/07/18 Views 1672 

    mysql-bin 로그를 SQL 문으로 변환한는 방법

  4. No Image 18Jul
    by
    2018/07/18 Views 1608 

    MySQL replication SQL 문 실행 오류 해결 방법

  5. No Image 18Jul
    by
    2018/07/18 Views 1558 

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

  6. MySQL 에서 테이블에 이미 존재하는 값으로 UPDATE 하는 경우

  7. UPDATE ~ CASE 문을 사용한 조건별 업데이트

  8. Mysql Join 해부(Left, Right, Outer, Inner Join

  9. No Image 05Mar
    by
    2019/03/05 Views 1219 

    mariaDB 백업 쉘 스크립트

  10. 하나의 쿼리로 여러 테이블의 데이터 삭제

  11. No Image 25Nov
    by
    2020/11/25 Views 775 

    [mysql,mariaDB] 컬럼 암호화, 복호화

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

    order by field 와 union, 원하는 대로 정렬 하기

  13. 서로 다른 결과를 한줄로 합쳐서 보여줘야 할 때(GROUP_CONCAT)

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

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

  15. No Image 25Nov
    by
    2020/11/25 Views 360 

    MySQL 암호화 방법

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

    BEGIN, COMMIT, ROLLBACK

  17. 이벤트 스케줄러 등록하기

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

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

  19. 27Mar
    by 조쉬
    2021/03/27 Views 261 

    MYSQL 트리거 중첩트리거

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

    LIMIT 속도 저하

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

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved