----*****BEFORE STATEMENT TRIGGER *****----------------
CREATE OR REPLACE TRIGGER BSTRI_TBL_BOOKRENT_INSERT
BEFORE INSERT
ON TBL_BOOKRENT
DECLARE
RENTIMPOSSIBLE_DAY EXCEPTION;
RENTIMPOSSIBLE_HOUR EXCEPTION;
BEGIN
IF TO_CHAR(SYSDATE, 'D') = '2'
THEN RAISE RENTIMPOSSIBLE_DAY;
ELSIF
TO_NUMBER( TO_CHAR(SYSDATE, 'HH24') ) < 9 OR
TO_NUMBER( TO_CHAR(SYSDATE, 'HH24') ) > 17
THEN RAISE RENTIMPOSSIBLE_HOUR;
END IF;
EXCEPTION
WHEN RENTIMPOSSIBLE_DAY THEN
RAISE_APPLICATION_ERROR(-20001, '월요일은 휴관입니다.');
WHEN RENTIMPOSSIBLE_HOUR THEN
RAISE_APPLICATION_ERROR(-20002, '대여가능시간은 09:00 부터 18:00 이전까지입니다.');
END;
DROP TRIGGER BTRI_TBL_BOOKRENT_INSERT;
DESC TBL_BOOKRENT;
SELECT *
FROM TBL_BOOKRENT;
INSERT INTO TBL_BOOKRENT(BOOKNO, MEMBERID)
VALUES('01HM0000101', 'KH001');