Dear gurus,

untuk audit proses insert knp ya data yg di tampilkan pada table audit hanya
tanggal. seperti contoh di bawah ini :
==================
CREATE TABLE COBA
(
EMPNO     NUMBER(4),
NAMA     VARCHAR2(20),
JABATAN       VARCHAR2(10),
GAJI       NUMBER
);

======================
CREATE TABLE COBA_audit
(
Tanggal_edit date,
EMPNO     NUMBER(4),
NAMA     VARCHAR2(20),
JABATAN    VARCHAR2(10),
GAJI       NUMBER
);

=======================================
CREATE OR REPLACE TRIGGER trg_COBA_audit
BEFORE INSERT OR DELETE OR UPDATE ON COBA
FOR EACH ROW
DECLARE
BEGIN
insert into COBA_audit values (
sysdate,
:old.EMPNO,
:old.NAMA,
:old.JABATAN,
:old.GAJI
);
END;
/

===================================
insert into COBA2 values (1, 'Andes', 'DBA', 400000)
commit;

***setelah insert, saya select * from coba_audit hasilnya adalah :
  tanggal_edit empno ename job sal  08/12/2008 16:07:33




===================================
update COBA2 set sal=1000000 where empno=1
commit;

****kemudian bila saya update barulah tampil, sebagai berikut :
  tanggal_edit empno ename job sal  08/12/2008 16:16:44 3 Andes DBA
1.000.000,00  08/12/2008 16:14:30




Mohon pencerahannya, terima kasih.


2008/8/6 erwin santoso <[EMAIL PROTECTED]>

>   just comment, ini ada di kursus oracle int'l yang sedang saya pelajari..
>
>
> --- On Wed, 8/6/08, rohmadsan <[EMAIL PROTECTED] <rohmadsan%40yahoo.com>>
> wrote:
> From: rohmadsan <[EMAIL PROTECTED] <rohmadsan%40yahoo.com>>
> Subject: [indo-oracle] Re: Tanya audit database
> To: [email protected] <indo-oracle%40yahoogroups.com>
> Date: Wednesday, August 6, 2008, 1:00 AM
>
>
> Hallo Mas An's Biring
>
> Tampaknya secara tak sengaja kita melakukan kontak batin pakai indra
>
> ke-enam :) Secara bersamaan kita menulis hampir sama :) Saya
>
> menulisnya di sini
>
> http://rohmad. net/2008/ 08/06/audit- update-table- dengan-trigger/
>
> Good luck Mas.
>
> Keep spirit untuk salig berbagi.
>
> Salam,
>
> Rohmad
>
> --- In indo-oracle@ yahoogroups. com, Ananias Sembiring
>
> <bre_tigan_tambak@ ...> wrote:
>
> >
>
> >
>
> > Hallo mas andes.,
>
> >
>
> > berikut cara-nya :
>
> > ============ ==
>
> >
>
> > 1. CREATE TABLE emp_audit untuk menyimpan hasil auditing
>
> >
>
> > SQL> CREATE TABLE EMP_AUDIT (
>
> > EMPNO NUMBER(4)
>
> > CONSTRAINT EMP_AUDIT_NN_ EMPNO NOT NULL,
>
> > CHANGE_DATE TIMESTAMP
>
> > CONSTRAINT EMP_AUDIT_NN_ CHANGE_DATE NOT NULL,
>
> > OLD_SAL NUMBER(7,2),
>
> > NEW_SAL NUMBER(7,2),
>
> > UPDATE_BY VARCHAR2(30) )
>
> > /
>
> >
>
> > 2. CREATE TRIGGER emp_audit.,
>
> >
>
> > SQL> CREATE OR REPLACE TRIGGER EMP_AUDIT
>
> > AFTER UPDATE OF SAL
>
> > ON SCOTT.emp
>
> > FOR EACH ROW
>
> > DECLARE
>
> > CUR_USER VARCHAR2(8);
>
> > CUR_DATE TIMESTAMP;
>
> > BEGIN
>
> > SELECT USER,SYSDATE INTO CUR_USER,CUR_ DATE FROM DUAL;
>
> > INSERT INTO EMP_AUDIT
>
> > VALUES (:OLD.EMPNO, CUR_DATE, :OLD.SAL, :NEW.SAL, CUR_USER);
>
> > END;
>
> > /
>
> >
>
> > 3. Coba connect sebagai scott., jalankan perintah update table emp.,
>
> kolom salary
>
> >
>
> > SQL> update emp set sal=6000 where ename = 'KING';
>
> >
>
> >
>
> > 4. Check table emp_audit untuk melihat hasil auditing.,
>
> >
>
> > set linesize 150
>
> > col CHANGE_DATE for a55
>
> >
>
> > SQL> select * from emp_audit;
>
> > EMPNO CHANGE_DATE OLD_SAL NEW_SAL
>
> UPDATE_BY
>
> > ---------- ------------ --------- --------- ---- ---------- ----------
>
> -----------
>
> > 7839 10-OCT-07 10.17.11.000000 AM 5000 6000
>
> SCOTT
>
> >
>
> >
>
> > NOTE :
>
> > ======
>
> >
>
> > Nilai old salary sebelum di-update 5000,. setelah di-update nilainya
>
> 6000.,
>
> > perubahan nilai sebelum dan sesudah update dapat direcord ke dalam
>
> table yang kita create.,Oleh sebab itu jenis auditing ini disebut
>
> Value-Based Auditing., proses update tersebut akan mengaktifkan
>
> trigger emp_audit.,
>
> >
>
> > Mungkin ini yang saya tangkap dari pertanyaan mas andes.,
>
> >
>
> > mungkin yang lain bisa menambahkan. ,
>
> >
>
> > mas., jangan panggil bapak., masih muda nich., he he he :)
>
> >
>
> > CMIIW.,
>
> > =======
>
> >
>
> > Salam.,
>
> >
>
> >
>
> > An's Biring
>
> >
>
> >
>
> > --- On Wed, 8/6/08, Andes Febrian <pejantan4u@ ...> wrote:
>
> > From: Andes Febrian <pejantan4u@ ...>
>
> > Subject: Re: [indo-oracle] Re: Tanya audit database
>
> > To: indo-oracle@ yahoogroups. com
>
> > Date: Wednesday, August 6, 2008, 7:03 AM
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> > Halo pak An's, saya bisa minta link atau tutorial yg
>
> merefer VBA ini ?
>
> >
>
> >
>
> >
>
> > thanks
>
> >
>
> >
>
> >
>
> > On 8/6/08, Ananias Sembiring <bre_tigan_tambak@ yahoo.com> wrote:
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > Hallo mas andes.,menurut saya., yang mas tanyakan berkaitan dengan
>
> >
>
> > > Value-Based Auditing (VBA).,
>
> >
>
> > >
>
> >
>
> > > Value based auditing digunakan untuk mengaudit nilai/perubahan data.,
>
> >
>
> > > VBA menggunakan trigger., untuk itu mas harus create trigger dulu.,
>
> >
>
> > >
>
> >
>
> > > caranya :
>
> >
>
> > > ========
>
> >
>
> > >
>
> >
>
> > > 1. create table untuk menampung auditing.,cth ., nama table
>
> emp_audit.,
>
> >
>
> > > 2. create trigger AFTER UPDATE pada kolom salary milik scott.,
>
> >
>
> > >
>
> >
>
> > > bila ingin mengcreate FK., defenisikan saja pada table emp_audit.,
>
> >
>
> > >
>
> >
>
> > > CMIIW.,
>
> >
>
> > >
>
> >
>
> > > Salam.,
>
> >
>
> > >
>
> >
>
> > > An's Biring.,
>
> >
>
> > >
>
> >
>
> > > --- On Wed, 8/6/08, Andes Febrian <pejantan4u@ gmail.
>
> com<pejantan4u% 40gmail.com> >
>
> >
>
> > > wrote:
>
> >
>
> > > From: Andes Febrian <pejantan4u@ gmail. com <pejantan4u% 40gmail.com>
> >
>
> >
>
> > > Subject: Re: [indo-oracle] Re: Tanya audit database
>
> >
>
> > > To: indo-oracle@ yahoogroups. com <indo-oracle% 40yahoogroups. com>
>
> >
>
> > > Date: Wednesday, August 6, 2008, 4:08 AM
>
> >
>
> > >
>
> >
>
> > > hihihi.. maaf ya membingungkan, saya yg salah, saya coba dgn
>
> contoh lain
>
> >
>
> > >
>
> >
>
> > > deh,
>
> >
>
> > >
>
> >
>
> > > misal ada query update SCOTT.EMP set salary = 12000 where empno =
>
> 123456;
>
> >
>
> > >
>
> >
>
> > > klo kita set audit pada table emp, kita bisa lihat kan perubahan pada
>
> >
>
> > >
>
> >
>
> > > object_name, sapa yg merubah isi table tersebut, waktu perubahan,
>
> di tabel
>
> >
>
> > >
>
> >
>
> > > sys.aud$.
>
> >
>
> > >
>
> >
>
> > > tp saya mau 'empno = 123456' ini bisa terlihat jg pada table
>
> audit, klo
>
> >
>
> > > bisa
>
> >
>
> > >
>
> >
>
> > > dijadikan foreign key pada table audit, sehingga saya dapat
>
> menggabungkan
>
> >
>
> > >
>
> >
>
> > > (join) antara table audit dgn table asli (table emp) dgn empno sebagai
>
> >
>
> > >
>
> >
>
> > > key-nya. sehingga saya bisa menampilkan( select) riwayat perubahan
>
> pada
>
> >
>
> > > table
>
> >
>
> > >
>
> >
>
> > > emp tersebut secara lengkap.
>
> >
>
> > >
>
> >
>
> > > thanks
>
> >
>
> > >
>
> >
>
> > > On 8/6/08, rohmadsan <[EMAIL PROTECTED] com> wrote:
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > > Hallo...
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > > Saya sudah mencoba membaca berkali-kali tapi masih belum paham juga
>
> >
>
> > >
>
> >
>
> > > > maksudnya Mas Andes :) Bisa ditambahkan kalimat-kalimat lain yang
>
> >
>
> > >
>
> >
>
> > > > mungkin bisa memperjelas? :)
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > > Keep spirit.
>
> >
>
> > >
>
> >
>
> > > > Mari kita saling berbagi.
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > > Salam,
>
> >
>
> > >
>
> >
>
> > > > Rohmad
>
> >
>
> > >
>
> >
>
> > > > http://rohmad. net/2008/ 05/30/kitab- suci-dba- oracle/
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > > --- In indo-oracle@ yahoogroups. com <indo-oracle%
>
> 40yahoogroups. com>,
>
> >
>
> > > "Andes
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > > Febrian" <pejantan4u@ ...>
>
> >
>
> > >
>
> >
>
> > > > wrote:
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > > > Dear gurus,
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > > > saya punya table pegawai dan dept pada user test,
>
> >
>
> > >
>
> >
>
> > > > > struktur pegawai
>
> >
>
> > >
>
> >
>
> > > > > no_id primary key,
>
> >
>
> > >
>
> >
>
> > > > > nama,
>
> >
>
> > >
>
> >
>
> > > > > alamat,
>
> >
>
> > >
>
> >
>
> > > > > gaji
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > > > struktur dept
>
> >
>
> > >
>
> >
>
> > > > > no_id foreign key
>
> >
>
> > >
>
> >
>
> > > > > jabatan,
>
> >
>
> > >
>
> >
>
> > > > > departemen
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > > > kemudian saya menggunakan audit feature pada kedua table diatas,
>
> >
>
> > >
>
> >
>
> > > > > yg saya mau tanyakan adalah, bisa ga yg di tampilkan selain field2
>
> >
>
> > >
>
> >
>
> > > > yg ada di
>
> >
>
> > >
>
> >
>
> > > > > sys.aud$ table, seperti no_id yg berupa primary key tersebut. jadi
>
> >
>
> > >
>
> >
>
> > > > yg saya
>
> >
>
> > >
>
> >
>
> > > > > ingin lihat adalah bila terjadi perubahan pada no_id 302 pada
>
> table
>
> >
>
> > >
>
> >
>
> > > > dept,
>
> >
>
> > >
>
> >
>
> > > > > saya bisa tau jg, Ow ternyata klo no_id 302 itu punya nya si ini
>
> >
>
> > >
>
> >
>
> > > > pada table
>
> >
>
> > >
>
> >
>
> > > > > yg berhubungan, seperti table pegawai.
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > > > atau bila membingungkan, intinya bisa tidak menampilkan kolom
>
> no_id
>
> >
>
> > >
>
> >
>
> > > > tersebut
>
> >
>
> > >
>
> >
>
> > > > > ? entah dgn feature audit atau ada feature dari oracle yg lain ?
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > > > mohon dengan sangat pencerahannya, terima kasih.
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > > > --
>
> >
>
> > >
>
> >
>
> > > > > Cheers,
>
> >
>
> > >
>
> >
>
> > > > > ^_^ Andes ^_^
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > > > [Non-text portions of this message have been removed]
>
> >
>
> > >
>
> >
>
> > > > >
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > >
>
> >
>
> > >
>
> >
>
> > > --
>
> >
>
> > >
>
> >
>
> > > Cheers,
>
> >
>
> > >
>
> >
>
> > > ^_^ Andes ^_^
>
> >
>
> > >
>
> >
>
> > > [Non-text portions of this message have been removed]
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > > [Non-text portions of this message have been removed]
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> > >
>
> >
>
> >
>
> >
>
> > --
>
> >
>
> > Cheers,
>
> >
>
> > ^_^ Andes ^_^
>
> >
>
> >
>
> >
>
> > [Non-text portions of this message have been removed]
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> >
>
> > [Non-text portions of this message have been removed]
>
> >
>
>
>
>
>
>
>
>
>
>
>
> [Non-text portions of this message have been removed]
>
>  
>



-- 
Cheers,
^_^ Andes ^_^


[Non-text portions of this message have been removed]

Kirim email ke