Terma kasih atas tanggapannya Mas Juanda error nya ini LINE/COL ERROR -------- ----------------------------------------- 1/49 PL/SQL: SQL Statement ignored 1/121 PL/SQL: ORA-00933: SQL command not propertly ended
Trim's ________________________________ From: juanda hakim <[email protected]> To: [email protected] Sent: Tue, February 9, 2010 7:56:09 PM Subject: Bls: [indo-oracle] Tanya Trigger n save iya sama2,, errornya dimana?? coba ketik : show err untuk melihat erornya dimana ____________ _________ _________ __ Dari: Del Ester <del.es...@yahoo. com> Kepada: indo-oracle@ yahoogroups. com Terkirim: Rab, 10 Februari, 2010 10:29:56 Judul: Re: [indo-oracle] Tanya Trigger n save Terima kasih atas bantuannya mbak Intan. 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: Intan <d0m1n...@gmail. com> To: indo-oracle@ yahoogroups. com Sent: Mon, February 8, 2010 7:56:22 PM Subject: Re: [indo-oracle] Tanya Trigger n save Coba cek dulu apa user tersebut sudah punya akses untuk create Triger atau belum 2010/2/9 Del Ester <del.es...@yahoo. com> > > > 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] > > > [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] Terhubung langsung dengan banyak teman di blog dan situs pribadi Anda? Buat Pingbox terbaru Anda sekarang! http://id.messenger .yahoo.com/ pingbox/ [Non-text portions of this message have been removed] [Non-text portions of this message have been removed]

