전체 글136 [오라클] 구지 백업을 한다.(트리거) 1.일단 테이블을 만들고 2.트리거로 백업을 한다. -- 판매백업 (구지 지우고 싶다면 해라)CREATE TABLE TBL_PANMAE3_BACKUP (PDCODE VARCHAR2(10),PANDAY DATE DEFAULT SYSDATE,PANSU NUMBER); -- 백업 트리거CREATE OR REPLACE TRIGGER ATRI_TBL_PRODUCT3_DELETEAFTER DELETEON TBL_PRODUCT3FOR EACH ROWBEGININSERT INTO TBL_PANMAE3_BACKUP-- TBL_PANMAE3_BACKUP 테이블에 밑의 결과물을 여기에 넣어라 SELECT * FROM TBL_PANMAE3--판매테이블에서 제품코드가 WHERE PDCODE = :OLD.PDCODE; DELET.. 2014. 2. 27. [오라클] 제약조건조회, 테이블명, 컬럼명, 제약조건 이름변경 변경하기 > CREATE TABLE TBL_PRODUCT (PDCODE VARCHAR2(10) ,PDNAME VARCHAR2(10) ,DANGA NUMBER ,CONSTRAINT TBL_PRODUCT_PDCODE_PK PRIMARY KEY(PDCODE) ); > CREATE TABLE TBL_PANAME (PDCODE VARCHAR2(10) ,PANDAY DATE DEFAULT SYSDATE ,PANSU NUMBER ,CONSTRAINT TBL_PANAME_PDCODE_FK FOREIGN KEY(PDCODE) REFERENCES TBL_PRODUCT(PDCODE) ON DELETE CASCADE ); -- 제약조건을 조회 SELECT * FROM USER_CONSTRAINTS WHERE TABLE_NAME = '.. 2014. 2. 27. [오라클] 트리거로 패스워드 바꾸기, 지우기 ##### 트리거 UPDATE ##### CREATE OR REPLACE TRIGGER ATRI_TBL_MEMBER_UPDATE -- 에프터 트리거 AFTER UPDATE OF PASSWD -- 패스워드 컬럼에만 ON TBL_MEMBER FOR EACH ROW BEGIN UPDATE TBL_LOGIN SET PASSWD = :NEW.PASSWD WHERE ID = :NEW.ID END; UPDATE TBL_MEMBER SET PASSWD ='ORACLE302' WHERE ID ='HONGKD'; ##### 트리거 DELETE ##### CREATE OR REPLACE TRIGGER ATRI_TBL_MEMBER_DELETE AFTER DELETE ON TBL_MEMBER FOR EACH ROW BEGIN .. 2014. 2. 27. [오라클] 트리거 만들기 #### 트리거(trigger) 만들기 #### ## TBL_MEMBER 테이블에 INSERT 되어진 행의 정보중 ID 컬럼과 PASSWD 컬럼의 값을 읽어다가 자동적으로 TBL_LOGIN 테이블에 INSERT 가 되도록 아래처럼 만든다. ## !!! 중요함!! 꼭 암기할 것 !! Trigger 내에서 insert 되어진 행의 정보는 :new 에 들어오고 Trigger 내에서 delete 되어진 행의 정보는 :old 에 들어온다. 그리고 Trigger 내에서 update 란? 먼저 delete 가 실행 되어진 후 insert 되어지는 것이다. ***** TRIGGER 생성 ***** CREATE OR REPLACE TRIGGER ATRI_TBL_MEMBER_INSERT--이전 것이 있으면 만들고 아니면 .. 2014. 2. 27. 이전 1 ··· 27 28 29 30 31 32 33 34 다음