[Mysql 5] Trigger qui bloque un INSERT

Trigger qui bloque un INSERT [Mysql 5] - SQL/NoSQL - Programmation

Marsh Posté le 23-06-2006 à 09:21:54    

Bonjour.
J'ai créé un trigger pour mettre une date automatique à l'enregistre.
De mémoire voici ce que j'ai fais.
Code :
 
CREATE TRIGGER ma_date AFTER INSERT ma_table FOR EACH UPDATE ma_table SET madate=NOW() WHERE idmonchamps=NEW.idmonchamps
 
 
Il m'a pas retourné d'erreur elle est enregistré.
Le problème arrive lorsque je veux faire un insert j'ai ce message.
 
#1442 - Can't update table 'ma_table' in stored function/trigger because it is already used by statement which invoked this stored function/trigger.
Là je comprend pas pourquoi le trigger le bloque.  :sarcastic:  
Quelqu'un aurait une idée?
Merci

Reply

Marsh Posté le 23-06-2006 à 09:21:54   

Reply

Marsh Posté le 25-06-2006 à 11:42:36    

C'est normal, tu es en train d'insérer une ligne dans ma_table, tout en voulant l'updater alors qu'elle n'y est pas encore...
 
L'enregistrement en question n'est pas disponible pour être modifié.

Reply

Marsh Posté le 25-06-2006 à 12:35:49    

Merci.
J'aurais compris si j'aurais BEFOR UPDATE mais là pour moi ça devrait pas gener puisque c'est l'apres insertion que je demande de faire une action sur cette même table. C'est dans ce raisonnement que j'ai agit.  :/
Enfin bref, de toute façon j'ai réussi à la faire mais ça été du travail pour rien car Mysql à un type de champs datetime avec une configuration qui peut mettre à jour date et l'heure pour l'enregistrement ou la modification.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed