parent
04848c8c52
commit
082edbbeca
@ -0,0 +1,22 @@ |
|||||||
|
USE Study |
||||||
|
GO |
||||||
|
|
||||||
|
-- 트리거 생성 |
||||||
|
|
||||||
|
CREATE TRIGGER ROLLBACK_TRIGGER |
||||||
|
ON DATABASE |
||||||
|
FOR DROP_TABLE |
||||||
|
AS |
||||||
|
BEGIN |
||||||
|
|
||||||
|
PRINT('DDL trigger: rollback') |
||||||
|
|
||||||
|
ROLLBACK TRANSACTION |
||||||
|
|
||||||
|
END |
||||||
|
|
||||||
|
|
||||||
|
-- 테스트 |
||||||
|
DROP TABLE EMPLOYEE |
||||||
|
|
||||||
|
SELECT * FROM EMPLOYEE |
@ -0,0 +1,48 @@ |
|||||||
|
USE Study |
||||||
|
GO |
||||||
|
|
||||||
|
-- AFTER(FOR) 트리거 생성 |
||||||
|
|
||||||
|
CREATE TRIGGER NEW_EMP_SAL |
||||||
|
ON EMPLOYEE |
||||||
|
FOR INSERT |
||||||
|
AS |
||||||
|
BEGIN |
||||||
|
|
||||||
|
PRINT('NEW_EMP_SAL Trigger is invoked.') |
||||||
|
|
||||||
|
SELECT * FROM inserted |
||||||
|
|
||||||
|
UPDATE EMPLOYEE SET SALARY = 100 |
||||||
|
FROM inserted, EMPLOYEE |
||||||
|
WHERE inserted.ENO = EMPLOYEE.ENO |
||||||
|
|
||||||
|
PRINT('Salary of new comer becomes 100') |
||||||
|
|
||||||
|
SELECT * FROM inserted, EMPLOYEE WHERE inserted.ENO = EMPLOYEE.ENO |
||||||
|
|
||||||
|
END |
||||||
|
|
||||||
|
|
||||||
|
-- 테스트 |
||||||
|
INSERT INTO EMPLOYEE(ENO, ENAME) VALUES(300, 'newcommer') |
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- INSTEAD OF 트리거 생성 |
||||||
|
|
||||||
|
CREATE TRIGGER NO_UPDATE |
||||||
|
ON DEPARTMENT |
||||||
|
INSTEAD OF UPDATE |
||||||
|
AS |
||||||
|
BEGIN |
||||||
|
|
||||||
|
PRINT('Update for the DEPARTMENT is prevented') |
||||||
|
|
||||||
|
END |
||||||
|
|
||||||
|
-- 테스트 |
||||||
|
SELECT * FROM DEPARTMENT |
||||||
|
UPDATE DEPARTMENT SET LOC='SEOUL' |
||||||
|
SELECT * FROM DEPARTMENT |
Loading…
Reference in new issue