| From: | Joepie Platteau <Joepie(dot)Platteau(at)kulak(dot)ac(dot)be> |
|---|---|
| To: | pgsql-admin(at)postgresql(dot)org |
| Subject: | Trigger set to backup to other table NOT FUNCTIONING... |
| Date: | 2004-09-13 10:05:06 |
| Message-ID: | 414570D2.9090405@kulak.ac.be |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-admin |
Hi,
I have a problem with my trigger... :
my tables :
CREATE TABLE public."T-Alumni" (
"Id_Persoon" int8 DEFAULT nextval('"T-Alumni_Id_Persoon_seq"'::text) NOT
NULL,
"SteunendLid" bool,
"Betaald" bool,
"Stamnr" int4,
"Alumninr" int4,
"Acjaar" varchar(50),
"Studiejaar" varchar(50),
CONSTRAINT "T-Alumni_pkey" PRIMARY KEY ("Id_Persoon")
) WITH OIDS;
CREATE TABLE public."T-Alumni-backup" (
"Id_Persoon" int8 NOT NULL,
"SteunendLid" bool,
"Betaald" bool,
"Stamnr" int4,
"Alumninr" int4,
"Acjaar" varchar(50),
"Studiejaar" varchar(50)
) WITH OIDS;
i have a table (T-Alumni) and BEFORE a record changes or is being
deleted, I want to copy this record to a UNDO_table (T-Alumni-backup).
I tried like this :
CREATE FUNCTION public.f100() RETURNS trigger AS '
BEGIN
INSERT INTO "T-Alumni-backup" VALUES (NEW.Id_Persoon, NEW.SteunendLid,
NEW.Betaald, NEW.Stamnr, NEW.Alumninr, NEW.Acjaar, NEW.Studiejaar);
RETURN NEW;
END;
' LANGUAGE 'plpgsql' VOLATILE;
CREATE TRIGGER t100t BEFORE DELETE OR UPDATE ON public."T-Alumni" FOR
EACH ROW EXECUTE PROCEDURE f100();
I get this error :
Record "new" has no field "id_persoon" (#7)
Also I want to have the name of the person who deleted or changed the
record in my BackUp (undo) table...
Can someone tell me how to solve this problem?
Thanx!
Joepie.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Edgars | 2004-09-13 11:39:18 | |
| Previous Message | C. Bensend | 2004-09-12 16:55:39 | Re: Memory exhausted in AllocSetAlloc |