| 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: | Whole Thread | Raw Message | 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 |