Rechercher : dans
Par :

Update table oracle par trigger

potier14, le 3 déc 2008 à 14:28:05 
 Signaler ce message aux modérateurs

Bonjour,
Je suis coincé pour créer un trigger et je cherche un bonne âme pour me secourir.
Voici l'énoncée :
J'ai une table PGPV qui contient les champs PVPV et FHM_FLAG_MODIF.
Je souhaite qu'à chaque modification du champ PVPV, le champ FHM_FLAG_MODIF prenne la valeur 'N' uniquement pour l'enregistrement modifié.
J'ai donc créé le trigger suivant :

CREATE OR REPLACE TRIGGER TRIG_FHM_PGPV
BEFORE UPDATE OF PVPV ON PGPV
declare
BEGIN
update pgpv
set fhm_flag_modif='O'
END;

Ce trigger fonctionne mais met à jour tous les enregistrements de la table. Lorsque je rajoute une condition, mon trigger ne fonctionne plus. Je cherche à réaliser un trigger comme celui qui suit, mais qui fonctionne :

CREATE OR REPLACE TRIGGER TRIG_FHM_PGPV
BEFORE UPDATE OF PVPV ON PGPV
declare
BEGIN
update pgpv
set fhm_flag_modif='O'
where pvclient=:new.pvclient
and pvref=::new.pvref;
END;

Merci par avance de votre aide
François

Configuration: Windows XP
Firefox 2.0.0.18

Meilleures réponses pour « Update table oracle par trigger » dans :
Oracle - Introduction au SGBD Oracle VoirIntroduction au SGBD Oracle Oracle est un SGBD (système de gestion de bases de données) édité par la société du même nom (Oracle Corporation - http://www.oracle.com), leader mondial des bases de données. La société Oracle Corporation a été créée en...
Oracle - Les fichiers d'une base Oracle VoirLes fichiers physiques d'une base Oracle Les fichiers physiques d'une base Oracle permettent de stocker de manière persistante les données manipulées par Oracle, tandis que la mémoire sert à optimiser la vitesse de fonctionnement de la base de...
SQL - Création d'index VoirQu'est-ce qu'un index? Un index est un objet complémentaire (mais non indispensable) à la base de données permettant d'"indexer" certaines colonnes dans le but d'améliorer l'accès aux données par le SGBDR, au même titre qu'un index dans un livre ne...
Collection CommentÇaMarche.net