Sabtu, 24 Februari 2007

SQL triggering

Ning sawijining dino aku coba bikin Applikasi database pakai Visual basic, dan untuk databasenya aku pake SQL server 2000. aku coba bikin aplikasi stock, ada kebingungan waktu mau design database, biangungnya gini.

Stock intinya kan masuk ===> simpan===> keluar, nahaku bingung tabelnya gimana ya, apa hanya 2 tabel atau 3 tabel. Kalau aku pake 2 tabel tabel mana yang ngga ada, sedangkan kalau 3 tabel gimana update otomatisnya ? betul ngga? maksudnya otomatis gini, saat kita melakukan event update pada tabel input maka otomatis tabel stock juga mengalami perubahan record maupun hanya quantity saja dan untuk tabel output maka tabel stock pun berlaku sama, terjadi pengurangan maupun penghilangan (penghapusan maksudnya).

lagi pusing2 nya (maklum VB ku isih cetek) ada bantuan ide dari teman2 di milist programer-vb, ide mereka gini ” Kenapa ngga pake trigger atau sp pada SQL server!!!!!”. Dasar kurang baca aku makin bingung trigger dan SP pada sql server sih apa ya.

Trigger itu perintah sql yang dieksekusi secara otomatis saat kita melakukan event pada tabel yag memiliki trigger. Nah kalau Sp atau Stored Procedure itu Syntaks SQL yang disimpan pada SQL server nah sintaksnya bisa dipanggil lewat VB.

setelah diskus sana sini akhirnya trigger pertama aku selesai dan ok.

CREATE TRIGGERS input_trigg ON dbo.input

FOR INSERT, UPDATE

AS

IF (SELECT * FROM T_stock WHERE idbarang = idbarang FROM INSERTED) is null

INSERT INTO T_Stock (idbarang, nmbarang, quantity, last_input)

SELECT * FROM INSERTED

ELSE

UPDATE T_Stock WHERE idbarang = idbarang FROM INSERTED

SET Quantity = Quanity + Quantity FROM INSERTED

Gitu caranya untuk tabel input nah untuk output sama lah cuma beda sintaks saja kok.

tak lupa makasih untuk teman - teman di milist programmer terutama buat mas ageng setiawan dan mas reza ginting.

bravo vb indonesia

0 komentar:

Posting Komentar

dimohon isi komentar anda, Syukur ada yang mau ngasih kritik yang membangun, untuk membangun silaturahmi