SQL
관리자 계정으로 oracle 붙기
우혁이 아빠
2011. 7. 18. 14:40
까먹지 말자!
as /sysdba
권한 보기
select *
from user_sys_privs;
트리거 권한 주기
grant create trigger to scott;
간단한 트리거 만들기
CREATE OR REPLACE TRIGGER TR_MAKE_SUBMISSION_HISTORY
BEFORE
UPDATE OR DELETE ON ENG_SUBMISSION
FOR EACH ROW
BEGIN
INSERT INTO ENG_SUBMISSION_HISTORY (
HISTORY_ID
, SUBMISSION_ID
, AUTHOR_ID
, TITLE
, ABSTRACT
, KEYWORDS
, STATUS
, ADMIN_EVAL
, DEL_FLAG
, REG_ID
, RGST_DT
, UPDATE_ID
, UPDATE_DT
) VALUES (
(SELECT CHR(NVL(MAX(HISTORY_ID),0) + 65)
FROM ENG_SUBMISSION_HISTORY
WHERE SUBMISSION_ID = :OLD.SUBMISSION_ID)
, :OLD.SUBMISSION_ID
, :OLD.AUTHOR_ID
, :OLD.TITLE
, :OLD.ABSTRACT
, :OLD.KEYWORDS
, :OLD.STATUS
, :OLD.ADMIN_EVAL
, :OLD.DEL_FLAG
, :OLD.REG_ID
, :OLD.RGST_DT
, :OLD.UPDATE_ID
, :OLD.UPDATE_DT
);
END;
/
as /sysdba
권한 보기
select *
from user_sys_privs;
트리거 권한 주기
grant create trigger to scott;
간단한 트리거 만들기
CREATE OR REPLACE TRIGGER TR_MAKE_SUBMISSION_HISTORY
BEFORE
UPDATE OR DELETE ON ENG_SUBMISSION
FOR EACH ROW
BEGIN
INSERT INTO ENG_SUBMISSION_HISTORY (
HISTORY_ID
, SUBMISSION_ID
, AUTHOR_ID
, TITLE
, ABSTRACT
, KEYWORDS
, STATUS
, ADMIN_EVAL
, DEL_FLAG
, REG_ID
, RGST_DT
, UPDATE_ID
, UPDATE_DT
) VALUES (
(SELECT CHR(NVL(MAX(HISTORY_ID),0) + 65)
FROM ENG_SUBMISSION_HISTORY
WHERE SUBMISSION_ID = :OLD.SUBMISSION_ID)
, :OLD.SUBMISSION_ID
, :OLD.AUTHOR_ID
, :OLD.TITLE
, :OLD.ABSTRACT
, :OLD.KEYWORDS
, :OLD.STATUS
, :OLD.ADMIN_EVAL
, :OLD.DEL_FLAG
, :OLD.REG_ID
, :OLD.RGST_DT
, :OLD.UPDATE_ID
, :OLD.UPDATE_DT
);
END;
/