Pradeepkumar, Pyatalo (IE10) wrote:
>
>
> Hi all,
>
> I have a table something like this -
>
> PointTable(PointName varchar, PointType integer, PointValue integer);
>
> I have to write a trigger before UPDATE on this table. In the trigger
> function, I need to check which field of the table is going to be
> updated...based on this I need to do some operation.
>
> CREATE FUNCTION Trg_UpdPointTable RETURNS TRIGGER AS'
> BEGIN
> IF PointType is being modified THEN
> // do some operation.
> ELSIF PointValue is being modified THEN
> // Do some operation
> END IF;
> END;
>
> CREATE TRIGGER PTableTrg BEFORE UPDATE ON PointTable FOR EVERY ROW
> EXECUTE PROCEDURE Trg_UpdPointTable();
>
>
> Is this functionality possible. I am using PostgreSQL version 7.4.3.
>
> Thanks in advance.
>
> Regards,
> Pradeep
>
>
Pradeep,
You can access the before and after values of an update statement with
the NEW and OLD record variables. See
http://www.postgresql.org/docs/8.0/interactive/plpgsql-trigger.html for
more information. Based on that I think that you can do something like:
IF NEW.pointtype <> OLD.pointtype THEN
HTH
--
Kind Regards,
Keith