Terima kasih atas tanggapannya mas Wadi.
aku udh coba lagi 
1. kalau di tulis seperti ini CREATE OR REPLACE TRIGGER update_STOCK_ brg_ord
    erornya warning: Trigger created with compilation errors.
    kemudian aku tulis SHOW ERROR, pesannya adalah
    Error for TRIGGER UPDATE_STOCK_BRG_SALES:
LINE/COL  ERROR
------------  
-----------------------------------------------------------------------------------
7/1               PL/SQL:  Statement ignored
8/56             PL/SQL:  ORA-00907: missing right parenthesis

2. kalau di tulis seperti ini CREATE TRIGGER update_STOCK_ brg_ord 
    pesan errornya 
    before insert of qty on order_detail
                       *
   ERROR at line 2:
   ORA-04073: column list not valid for this trigger type

  kalau diketik SHOW ERROR
  pesannya NO ERROR.

Aku benar2 ngak mengerti salahnya dimana karena aku baru belajar, kalau ngak 
keberatan tolong aku di kasih solusi ya Mas.

Terima kasih banyak sebelumnya.
  





________________________________
From: Wadi Achmed <[email protected]>
To: [email protected]
Sent: Wed, February 10, 2010 3:17:53 AM
Subject: Re: {Disarmed} Re: [indo-oracle] Tanya Trigger n save

   
Hi,

Kalau compile nya di sqlplus, coba lihat errornya dengan ketik show error
Dari output show error itu, baru bisa diketahui salahnya di mana.

Umumnya kurang tanda koma, titik koma ( ; ), kutip, sintaks nya.

Cheers,
Wadi Achmed

On Wed, Feb 10, 2010 at 10:28 AM, Del Ester <del.es...@yahoo. com> wrote:

> Terima kasih atas bantuannya mas Joey.
> maaf, saya ada 1 pertanyaan lagi, sewaktu saya run 2 trigger tersebut
> keluar error
> Warning: Trigger created with compilation errors.
>
> Atas bantuannya saya ucapkan terima kasih.
>
>
>
>
>
> ____________ _________ _________ __
> From: inijoey <inij...@gmx. com>
> To: indo-oracle@ yahoogroups. com
> Sent: Mon, February 8, 2010 7:56:13 PM
> Subject: {Disarmed} Re: [indo-oracle] Tanya Trigger n save
>
>
> sepertinya cuman kurang grant create trigger untuk user bro ...
> coba login dari system : grant create trigger to <user>;
>
> regards,
> joey
>
> Del Ester wrote:
> >
> >
> > Hallo para senior Oracle.
> > Saya baru belajar Oracle dapat kesulitan, mudahan2 para senior oracle
> > ada yang bisa memberikan penyegaran.. ......
> > aku mau membuat trigger dari contoh di bawah ini.
> >
> > 1. untuk create table sih gak ada masalah, semuanya "table created",
> > 2. setelah nyoba create dua trigger, ke dua duanya keluar pesan
> > "ORA-01031: insufficient privilages".
> > kenapa yah.... apa memang ada yang salah dari dua sintak trigger
> tersebut.
> > 3. dalam penulisannya apa memang harus di ikutkan kata2 replace untuk
> > create (baru).
> > 4. sintak2 seperti ini apa bisa di simpan (dalam satu file/tempat) dan
> > sewaktu2 bisa di panggil untuk modifikasi,
> >
> > Sekian dari saya atas kebaikan hati para senior Oracle untuk
> > memberikan tanggapan dan pencerahannya saya ucapkan terima kasih.
> >
> > NB.
> > Berikut adalah sintak yang saya coba
> >
> > 1. Buat tabel dan mendefinisikan constraint
> > SQL> CREATE TABLE MASTER_BARANG
> > 2 (KODE_BRG NUMBER(4) PRIMARY KEY,
> > 3 NAMA_BRG VARCHAR2(20) NOT NULL,
> > 4 HARGA NUMBER(10),
> > 5 STOCK NUMBER(4));
> > Table created.
> >
> > SQL> CREATE TABLE ORD
> > 2 (NO_ORDER NUMBER(4) PRIMARY KEY,
> > 3 ID_SUPPLIER NUMBER(4) NOT NULL,
> > 4 TGL_ORDER DATE,
> > 5 RP_TOTAL NUMBER(12));
> > Table created.
> >
> > SQL> CREATE TABLE ORDER_DETAIL
> > 2 (NO_ORDER NUMBER(4) REFERENCES ORD(NO_ORDER) ,
> > 3 NO_URUT NUMBER(3),
> > 4 KODE_BRG NUMBER(4) REFERENCES MASTER_BARANG( KODE_BRG) ,
> > 5 HARGA NUMBER(10),
> > 6 QTY NUMBER(4),
> > 7 SUBTOTAL NUMBER(10));
> > Table created.
> >
> > SQL> CREATE TABLE SALES
> > 2 (NO_SALES NUMBER(4) PRIMARY KEY,
> > 3 ID_CUST NUMBER(4) NOT NULL,
> > 4 TGL_SALES DATE,
> > 5 RP_TOTAL NUMBER(12));
> > Table created.
> >
> > SQL> CREATE TABLE SALES_DETAIL
> > 2 (NO_SALES NUMBER(4) REFERENCES SALES(NO_SALES) ,
> > 3 NO_URUT NUMBER(3),
> > 4 KODE_BRG NUMBER(4) REFERENCES MASTER_BARANG( KODE_BRG) ,
> > 5 HARGA NUMBER(10),
> > 6 QTY NUMBER(4),
> > 7 SUBTOTAL NUMBER(10));
> > Table created.
> >
> > 2. Membuat Trigger Database
> >
> > SQL> CREATE OR REPLACE TRIGGER update_STOCK_ brg_ord
> > 2 BEFORE INSERT OR UPDATE OF QTY ON order_detail
> > 3 FOR EACH ROW
> > 4 BEGIN
> > 5 IF NVL(:OLD.QTY, 0) < NVL(:NEW.QTY, 0) THEN
> > 6 UPDATE MASTER_BARANG
> > 7 SET STOCK = STOCK + (NVL(:NEW.QTY, 0)-NVL(:OLD. QTY,0))
> > 8 WHERE KODE_BRG = :NEW.KODE_BRG;
> > 9 ELSE
> > 10 UPDATE MASTER_BARANG
> > 11 SET STOCK = STOCK - (NVL(:OLD.QTY, 0)-NVL(:NEW. QTY,0))
> > 12 WHERE KODE_BRG = :NEW.KODE_BRG;
> > 13 END IF;
> > 14 END;
> > 15 /
> > ORA-01031: insufficient privilages
> >
> > SQL> CREATE OR REPLACE TRIGGER update_STOCK_ brg_sales
> > 2 BEFORE INSERT OR UPDATE OF QTY ON sales_detail
> > 3 FOR EACH ROW
> > 4 BEGIN
> > 5 IF NVL(:OLD.QTY, 0) < NVL(:NEW.QTY, 0) THEN
> > 6 UPDATE MASTER_BARANG
> > 7 SET STOCK = STOCK - (NVL(:NEW.QTY, 0)-NVL(:OLD. QTY,0))
> > 8 WHERE KODE_BRG = :NEW.KODE_BRG;
> > 9 ELSE
> > 10 UPDATE MASTER_BARANG
> > 11 SET STOCK = STOCK + (NVL(:OLD.QTY, 0)-NVL(:NEW. QTY,0))
> > 12 WHERE KODE_BRG = :NEW.KODE_BRG;
> > 13 END IF;
> > 4 END;
> > 15 /
> > ORA-01031: insufficient privilages
> >
> > [Non-text portions of this message have been removed]
> >
> >
>
> --
> This message has been scanned for viruses and
> dangerous content by MailScanner, and is
> believed to be clean.
>
> [Non-text portions of this message have been removed]
>
>
>
>
>
>
>
> [Non-text portions of this message have been removed]
>
>
>
> ------------ --------- --------- ------
>
> --
> -----------I. N.D.O - O.R.A.C.L.E- --------- -----
> Keluar: indo-oracle- unsubscribe@ yahoogroups. com
> Website: http://indooracle. wordpress. com
> http://www.facebook .com/group. php?gid=51973053 515
> ------------ --------- --------- --------- --------
>
> 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]


 


      

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

Kirim email ke