bonjour,
je souhaite écrire un trigger dans une table, dont la clé est (LOGIN, CODE) , concernant un champ donné (FLAG)
FLAG = 0 ou 1
si on met à FLAG à 1, tous les autres enregistrements vont avoir FLAG = 0..
comment je peux écrire ça..??
j'ai fait ceci mais ça me génère une erreur comme quoi il est déjà en train de bidouiller dans la table..(MyTable en mutation.. le déclencheur ne peut la voir..)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 CREATE OR REPLACE TRIGGER TRIG_MyTable BEFORE INSERT OR UPDATE ON MyTable FOR EACH ROW BEGIN IF UPDATING THEN IF :New.FLAG = 1 THEN UPDATE MyTable SET FLAG= 0 WHERE Login = :NEW.Login AND Code <> :NEW.Code; END IF; END IF; END; /
Partager