Re: regarding triggers - Mailing list pgsql-general

From John McCawley
Subject Re: regarding triggers
Date
Msg-id 43C3C9E7.8050706@hardgeus.com
Whole thread Raw
In response to regarding triggers  ("surabhi.ahuja" <surabhi.ahuja@iiitb.ac.in>)
Responses Re: regarding triggers
Re: regarding triggers
List pgsql-general
Foreign keys do not cascade deletions.  If table y references table x on
column a, the attempt to delete records in x with dependent records in y
will yield an error.  So the answer to that question is no, your trigger
won't get called because a) y doesn't get touched because that's not
what foreign keys do and b) an error is raised anyway

Regarding the usefulness of triggers...I tend to stay away from them.  I
like to keep my data in my database and my logic in my application.  I
try to relegate triggers to very simple things like timestamping
records.  i.e. things that I won't later wonder "What in the hell is
going on???"



surabhi.ahuja wrote:

> is there an advantage of using a trigger? when the same job can be
> performed by a stored procedure?
>
> one more question is as follows:
> suppose i have a table x, with a primary attribute 'a'
>
> and i have a table y, with the primary attribute 'b', and a foreign
> key 'a'.
>
> suppose i say delete from x where a = '1',
>
> it means that not only the rows from x get deleted but also rows from
> y get deleted.
>
> now i have a trigger which is written for deletes taking place from
> the table y.
>
> however if i say delete from x where a = '1',
>
> will the trigger (mentioned above) still be called? (because delete
> are also taking place from the table y)
>
> thanks,
> regards
> Surabhi
>

pgsql-general by date:

Previous
From: John McCawley
Date:
Subject: Re: Best programming language / connectivity for best performance
Next
From: Jaime Casanova
Date:
Subject: Re: regarding triggers