Re: ON DELETE trigger blocks delete from my table
От | Jan Wieck |
---|---|
Тема | Re: ON DELETE trigger blocks delete from my table |
Дата | |
Msg-id | 417D58FF.90606@Yahoo.com обсуждение исходный текст |
Ответ на | ON DELETE trigger blocks delete from my table ("Naeem Bari" <naeem.bari@agilissystems.com>) |
Список | pgsql-general |
On 10/25/2004 2:56 PM, Naeem Bari wrote: > Hi, > > I am using postgres 7.4.5 on Redhat Enterprise Linux 3. > > My background is really on Oracle, and I am porting a largish database > over to postgres. > > Here is my problem: > > On oracle, I had a table with an "on update or delete" trigger that > copied the current row out to an audit table. Works like a champ. On > postgres, when I try to delete a row, all it gives back to me is "DELETE > 0" and does nothing. > > Here is the text of the trigger: > > ~~~~~~~~~~ > CREATE OR REPLACE FUNCTION public.func_job_status_upd() > RETURNS trigger AS > ' > begin > insert into x_job_status values ( OLD.job_id, OLD.job_status_type_id, > OLD.status_date, OLD.notes, OLD.edit_person_id, OLD.edit_date); > return new; There is no NEW row on DELETE. You can either let the trigger fire AFTER, causing its return value to be ignored, or define different trigger procedures for UPDATE/DELETE, or you can check inside the trigger for which event it was actually fired and return NEW/OLD accordingly. Jan > end; > ' > LANGUAGE 'plpgsql' VOLATILE; > ~~~~~~~~~~ > > Any help would be appreciated! > > Thanks, > naeem > -- #======================================================================# # It's easier to get forgiveness for being wrong than for being right. # # Let's break this rule - forgive me. # #================================================== JanWieck@Yahoo.com #
В списке pgsql-general по дате отправления: