CREATE OR REPLACE FUNCTION update_antrian_number() RETURNS TRIGGER AS $antrian$
DECLARE
jumlah_antrian integer;
BEGIN
IF(TG_OP='INSERT') THEN
SELECT INTO jumlah_antrian COUNT(1) FROM tb_registration WHERE d_registration_date between (now()::date)
and (now()::date+1) AND n_staff_id = new.n_staff_id;
update tb_registration SET n_escort_primary_id = jumlah_antrian WHERE n_reg_id = new.n_reg_id;
END IF;
RETURN NEW;
END;
$antrian$ LANGUAGE plpgsql;
CREATE TRIGGER antrian AFTER INSERT ON tb_registration FOR EACH ROW EXECUTE PROCEDURE update_antrian_number();
Contoh Trigger di atas mengupdate nomor antrian yg direpresentasikan oleh field n_escord_primary_id, logic trigger dalam postgresql selalu disimpan dalam trigger function (suatu fungsi yang mereturn trigger).
Senin, 11 Maret 2013
Langganan:
Posting Komentar (Atom)
Tidak ada komentar:
Posting Komentar