#1 Wed 30 March 2005 09:46
- Benedicte Gautier5
- Invité
[PostgreSQL] Recuperer nom de la table
De: Benedicte
Je suis actuellement entrain
1/ de creer une fonction et des triggers dans phpPgAdmin pour 'Delete', 'Insert' ou 'Update' des enregistrements.
2/ de creer une table journal pour enregistrer les 3 sortes de modifications apportees aux tables.
QUESTION: comment fait-on pour recuperer le nom de la table dans laquelle la modification a eu lieu dans le journal?? (Pour le moment, j'ai mis le nom d'une table par defaut = 'voirie')
Voici ma fonction:
BEGIN
IF (TG_OP = 'DELETE') THEN
INSERT INTO maj (nomtable, idobjet, userid, tymodif, datemodif) SELECT 'voirie', OLD.code_gs, user, 'D', CURRENT_DATE;
RETURN OLD;
ELSIF (TG_OP = 'UPDATE') THEN
INSERT INTO maj (nomtable, idobjet, userid, tymodif, datemodif) SELECT 'voirie', NEW.code_gs, user, 'U', CURRENT_DATE;
RETURN NEW;
ELSIF (TG_OP = 'INSERT') THEN
INSERT INTO maj (nomtable, idobjet, userid, tymodif, datemodif) SELECT 'voirie', NEW.code_gs, user, 'I', CURRENT_DATE;
RETURN NEW;
END IF;
RETURN NULL;
END;
Merci d'avance.