Hi, Karena triggernya ingin melakukan update lagi ke table KARYAWAN, maka sebaiknya diubah timing triggernya. Yaitu BEFORE UPDATE
SQL> CREATE OR REPLACE TRIGGER ID_SEUMUR_HIDUP 2 BEFORE UPDATE ON KARYAWAN FOR EACH ROW 3 DECLARE 4 BEGIN 5 IF FLOOR(MONTHS_BETWEEN(sysdate, :NEW.TGL_LAHIR)/12) >= 60 6 AND :NEW.TGL_CETAK_ID IS NOT NULL 7 THEN 8 :NEW.TGL_PJG_ID := TO_CHAR(:NEW.TGL_CETAK_ID,'DD-MM-')||'2050' 9 END IF; 10 END; 11 / Cheers, Wadi Achmed On Thu, Feb 11, 2010 at 5:31 PM, Padang Nadimpu <[email protected]> wrote: > Master Oracle, mohon dikoreksi error trigger update : > > SQL> CREATE OR REPLACE TRIGGER ID_SEUMUR_HIDUP > 2 AFTER UPDATE ON KARYAWAN FOR EACH ROW > 3 DECLARE > 4 BEGIN > 5 IF FLOOR(MONTHS_BETWEEN(sysdate,TGL_LHR)/12)>=60 > 6 AND TGL_CETAK_ID IS NOT NULL > 7 THEN > 8 UPDATE KARYAWAN > 9 SET TGL_PJG_ID= TO_CHAR(TGL_CETAK_ID,'DD-MM-')||'2050' WHERE > NIK = :NEW.NIK; > 10 END IF; > 11 END; > 12 / > > Warning: Trigger created with compilation errors. > > SQL> > SQL> > SQL> SHOW ERROR; > Errors for TRIGGER ID_SEUMUR_HIDUP: > > LINE/COL ERROR > -------- ----------------------------------------------------------------- > 3/4 PL/SQL: Statement ignored > 3/36 PLS-00201: identifier 'TGL_LHR' must be declared > SQL> > > Atas kesediaannya, diucapkan trims > > > > > > ------------------------------------ > > -- > -----------I.N.D.O - O.R.A.C.L.E--------------- > Keluar: [email protected] > Website: http://indooracle.wordpress.com > http://www.facebook.com/group.php?gid=51973053515 > ----------------------------------------------- > > Bergabung dengan Indonesia Thin Client User Groups, > Terminal Server, Citrix, New Moon Caneveral, di: > http://indo-thin.blogspot.comYahoo! Groups Links > > > > [Non-text portions of this message have been removed]

