IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes PostgreSQL Discussion :

mettre un timestamp par trigger


Sujet :

Requêtes PostgreSQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 116
    Points : 52
    Points
    52
    Par défaut mettre un timestamp par trigger
    Bonjour,

    J'utilise Postgresql sur un nombre croissant de projets client/serveur et j'en suis vraiment très content.

    Ceci dit, je voudrais faire deux choses toutes simples avec un trigger :

    1. Mettre un timestamp dans la MaTable.CreeLe chaque fois qu'un enregistrement est créé dans MaTable

    2. Mettre un timestamp dans la MaTable.ModifieLe chaque fois que l'enregistrement a été modifié

    Comme je ne suis pas DBA et que le temps presse, quelqu'un aurait-il l'amabilité de me donner le code et les indications nécessaires ?

    Merci d'avance.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1 874
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 874
    Points : 2 890
    Points
    2 890
    Par défaut
    Pour le timestamp de création un trigger n'est pas nécessaire, il suffit que la colonne aie la valeur par défaut: now()

    Pour l'update c'est un trigger minimaliste:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    CREATE OR REPLACE FUNCTION update_table() RETURNS TRIGGER AS $$
    BEGIN
      new.date_modif=now();
      return new;
    END;
    $$ LANGUAGE 'plpgsql'
     
    CREATE TRIGGER trig BEFORE UPDATE ON la_table
     FOR EACH ROW EXECUTE PROCEDURE update_table();

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2007
    Messages : 116
    Points : 52
    Points
    52
    Par défaut
    Ca marche!
    Merci.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajouter ou mettre à jour par trigger
    Par Genohunter dans le forum SQL Procédural
    Réponses: 8
    Dernier message: 19/09/2008, 14h11
  2. Réponses: 2
    Dernier message: 27/09/2006, 18h07
  3. id autoincrémenté par trigger
    Par dumser1 dans le forum Développement
    Réponses: 4
    Dernier message: 08/02/2006, 13h54
  4. Mettre une date par defaut dans une textBox.
    Par yaumme dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 01/12/2005, 22h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo