Trigger function to know which fields are being updated - Mailing list pgsql-general

From Bernard Cheung
Subject Trigger function to know which fields are being updated
Date
Msg-id BAY1-F25eOtXygrWhju00006312@hotmail.com
Whole thread Raw
List pgsql-general
I am writing a trigger function. How can I know which fields are being
updated in the PL/SQL function?

For example I have a table here:

CREATE TABLE COMPANY (
   COMPANY_ID VARCHAR(10) NOT NULL,
   NAME VARCHAR(30),
   ADDRESS VARCHAR(30));

I want to write a trigger to block all update statements without updating
NAME. I tried the following code block and it doesn't work:

   IF TG_OP = ''UPDATE'' THEN
      IF NEW.NAME IS NULL THEN
         RAISE NOTICE ' Field NAME must be provided!';
      END IF;
   END IF;

Are there any functions like the Oracle's UPDATING() predicate?

Bernard Cheung

_________________________________________________________________
No masks required! Use MSN Messenger to chat with friends and family.
http://go.msnserver.com/HK/25382.asp


pgsql-general by date:

Previous
From: Együd Csaba
Date:
Subject: Removing OIDs without recreate
Next
From: Karel Zak
Date:
Subject: Re: Removing OIDs without recreate