Pak Andi,
disini saya hanya bisa dengan pseudocode saja karena detailnya tidak saya
ketahui
yaitu: tabel terkait (relationshipnya), struktur dan isi datanya.

yang saya tangkap:
- Tidak semua data di Tabel TRANSAKSI ada di Tabel UPDATE
- Jika ada di Tabel UPDATE ubahlah di tabel TRANSAKSI (dan 5 tabel lainnya).

alternatif:
1. Tambahkan kolom di tabel TRANSAKSI (mis: DIPROSES tipe CHAR)
ALTER TABLE transaksi ADD (diproses char default 'T');
2. Looping dari tabel UPDATE untuk memeriksa TRANSAKSI (+5 lainnya).
3. Jika row tabel UPDATE ada diTRANSAKSI, lakukan update tabel TRANSAKSI
   dan tandai kolom DIPROSES dengan 'Y'.
4.Setelah selesai proses updating:
-DELETE transaksi WHERE DIPROSES ='T';
-ALTER TABLE   transaksi DROP (diproses);


Cara prosesnya dengan PL/SQL kira-2 :
=====================
DECLARE
  variabel VARCHAR2(10);

--cursor 1 untuk tabel UPDATE
  CURSOR  c1 IS SELECT kol1, kol2, kol3  FROM query_dengan_tabel_UPDATE

--cursor 2 untuk tabel TRANSAKSI (serta 5 tabel lainnya).
  CURSOR  c2 IS SELECT t1.t1kol, t2.t2kol FROM t1, t2 WHERE ...
                     t1.pk = t2.fk AND t1.kolx = variabel;
  vkol1 tipedata;
  vkol2 tipedata;
  vkol3 tipedata;
  t1kol tipedata;
  t2kol tipedata;

BEGIN
  OPEN C1;
  LOOP
   FETCH c1 INTO vkol1, vkol2, vkol3;
   EXIT WHEN C1%NOTFOUND;
. .
     --disini letakkan pemrosesan yg diperlukan, misalnya
      variabel := vkol1;
. .
       OPEN C2;
       LOOP
        FETCH c2 INTO t1kol,   t2kol;
        EXIT WHEN C2%NOTFOUND;
           --disini letakkan pemrosesan yg diperlukan, misalnya
            UPDATE transaksi SET qty = jumlah, diproses ='Y' WHERE kondisi;
            IF %NOTFOUND THEN
           ....
           END IF
         --Bisa gunakan ROWID untuk kondisi update, shg hanya 1 row yang
diupdate pada tabel TRANSAKSI
         --Pertimbangkan penggunaan CURSOR ...FOR UPDATE
              . . .
      END LOOP;
      CLOSE C2;
        . . .
        . . .
  END LOOP;
CLOSE C1;
END;



mudah2an bisa terselesaikan.
salam,

ferry.

----- Original Message -----
From: "Jack Mania" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Wednesday, July 06, 2005 3:20 PM
Subject: [indo-oracle] Re: Minta bantuan SQL


> Maaf baru balas (habis ada tugas luar, messege saya
> resume)
> Thx atas sharingnya Pak Ferry.
> Terus terang justru saya sedang kesulitan bagaimana
> script buat PL/SQL nya, yang bisa mengupdate secara
> langsung Tabel TRANSAKSI dengan referensi Tabel
> UPDATE.
> Perlu diketahui juga bahwa tidak semua data di Tabel
> TRANSAKSI ada di Tabel UPDATE jadi hanya yang masuk
> Tabel UPDATE saja yang dirubah (ini hanya saya ambil
> contoh 1 tabel yang di update, padahal saya akan
> update 5 tabel dengan kondisi/referensi yang sama).
> Saya tunggu tanggapannya.
>
> Regards,
>
>  Andi
>
>



--
-----------I.N.D.O - O.R.A.C.L.E---------------
Keluar: [EMAIL PROTECTED]
Website: http://indo-oracle.blogspot.com
-----------------------------------------------

Bergabung dengan Indonesia Thin Client User Groups, 
Terminal Server, Citrix, New Moon Caneveral, di:
http://indo-thin.vze.com 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/indo-oracle/

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 


Kirim email ke