From: | J Crypter <jcrypter(at)yahoo(dot)de> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | instead of trigger in pg |
Date: | 2005-12-28 15:28:23 |
Message-ID: | 20051228152823.2471.qmail@web26001.mail.ukl.yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Hi,
I would like to implement a 1:n relation between two
tables.
An auto-generated number should be used as primary key
which connects both tables.
Example:
table 1:
name | number (prim_key)
table 2:
country | number_table1 (foreign key)
View:
number_table1 | name | country
I would like to insert into both tables in one step.
"Insert into view (name,
country)values('name','country');"
Oracle supports an instead-of-trigger but Postgres
doesn't do this.
CREATE or replace FUNCTION insertInto() RETURNS
trigger AS '
BEGIN
insert into table1(name)values(NEW.name);
insert into
table2(number,country)values(NEW.number,NEW.country);
RETURN NEW;
END;
' LANGUAGE plpgsql;
CREATE TRIGGER insert_TR BEFORE INSERT OR UPDATE ON
view
FOR EACH ROW EXECUTE PROCEDURE insertInto();
I would like to implement something like this but I
don't know how to do.
Thank you for you help!
Jakob
___________________________________________________________
Telefonate ohne weitere Kosten vom PC zum PC: http://messenger.yahoo.de
From | Date | Subject | |
---|---|---|---|
Next Message | Greg Stark | 2005-12-28 15:47:33 | Re: "large" IN/NOT IN subqueries result in query returning wrong data |
Previous Message | Don Croata | 2005-12-28 14:29:19 | Cursors and recursion |