Re: date de la derniere modif

From: santiago <chetzacoalt(at)free(dot)fr>
To: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: date de la derniere modif
Date: 2005-07-28 08:44:32
Message-ID: 42E89AF0.2060609@free.fr
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

merci, j'aurais meme pas a chercher :)

j'en profite pour ajouter une autre question :
est ce qu'un trigger defini comme ici sur les update d'un table A
peut modifier une table B ?

merci

Stéphane Bunel wrote:
> santiago wrote:
>
>> salut
>>
>> je voudrais savoir si postgres conserve la date de derniere modif pour
>> chaque ligne ?
>
>
> Je ne crois pas avoir déjà vu cela.
>
>> je cherche, mais j'arrive pas a trouver. je suppose que ca signifie non.
>> Il y a un moyen simple de rajouter ca ?
>
>
> Oui avec un trigger, par exemple :
>
> 1) Vous ajouter à <votre table> un champs de type timestamp, tel que :
>
> m_time timestamptz NOT NULL DEFAULT now(),
>
> 2) Ce champ sera modifier par la fonction suivante :
>
> CREATE OR REPLACE FUNCTION tf_update_m_time()
> RETURNS "trigger" AS
> $BODY$
> BEGIN
> NEW.m_time := now() ;
> RETURN NEW;
> END;
> $BODY$
> LANGUAGE 'plpgsql' VOLATILE;
>
> 3) Fonction qui sera appelée sur l'évènement de votre choix, par exemple
> à chaque UPDATE de <votre table>, tel que :
>
> CREATE TRIGGER t_m_time
> BEFORE UPDATE
> ON <votre table>
> FOR EACH ROW
> EXECUTE PROCEDURE tf_update_m_time();
>
> Stéphane BUNEL.
>
> PS: Dans le 2) la notation $BODY$ n'est valable qu'a partir de PG8. Pour
> un PG plus "ancien", utilisez des simples quote (').
>
>

In response to

Responses

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Jean-Christophe Arnu 2005-07-28 09:18:53 Abeille
Previous Message Stéphane Bunel 2005-07-28 08:25:43 Re: date de la derniere modif