Re: PostgreSQL trigger how to detect a column value explicitely modified

Поиск
Список
Период
Сортировка
От PALAYRET Jacques
Тема Re: PostgreSQL trigger how to detect a column value explicitely modified
Дата
Msg-id 503814564.256630396.1762334690791.JavaMail.zimbra@meteo.fr
обсуждение исходный текст
Ответ на Re: PostgreSQL trigger how to detect a column value explicitely modified  (Laurenz Albe <laurenz.albe@cybertec.at>)
Список pgsql-general
Hello,

I think you knew that I don't really want to create a function in language C to handle and test the values of the
columnsin the SQL query. For me, it is much easier to use the solution of the trigger " BEFORE|AFTER UPDATE OF col ". 
Joke aside, I hadn't thought of that ; it is an excellent idea (simple solution).
I tested it ; it works as expected.

Thanks to people who replied.
Regards.

----- Mail original -----
De: "Laurenz Albe" <laurenz.albe@cybertec.at>
À: "PALAYRET Jacques" <jacques.palayret@meteo.fr>, pgsql-general@lists.postgresql.org
Envoyé: Mardi 4 Novembre 2025 18:29:05
Objet: Re: PostgreSQL  trigger how to detect a column value explicitely modified

On Tue, 2025-11-04 at 12:48 +0000, PALAYRET Jacques wrote:
> In a trigger body, is there a simple way to know if a column value has been explicitely modified ?
> Explicitely modified ; in others words, typically indicated in the SET clause of the UPDATE.
> A simple way ; I mean without analysing the SQL statement which can be very difficult according to the statement.

Unless you want to write a C trigger function you can use

  CREATE TRIGGER ... BEFORE|AFTER UPDATE OF col ON tab FOR EACH ROW ...

Then the trigger function will only be called if the SET clause of UPDATE
contains the column "col".

Yours,
Laurenz Albe



В списке pgsql-general по дате отправления: