[답변] 트리거 0 0 2,362

by 마농 트리거 [2011.04.04 09:54:47]



-- 1. c_c 컬럼 일괄 갱신(1회 실행) --
UPDATE store s
SET c_c = (SELECT COUNT(*) FROM com WHERE c_id = s.c_id)
;


-- 2. 트리거 생성 --
CREATE OR REPLACE TRIGGER tr_com_cnt
BEFORE
INSERT OR UPDATE OR DELETE
ON emp
FOR EACH ROW
BEGIN
  IF UPDATING OR DELETING THEN
    UPDATE store
    SET c_c = c_c - 1
    WHERE c_id = :OLD.c_id
    ;
  END IF;
  IF UPDATING OR INSERTING THEN
    UPDATE store
    SET c_c = c_c + 1
    WHERE c_id = :NEW.c_id
    ;
  END IF;
END;
/

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입