|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité de passage
![]() Otmane MALIH Inscription : décembre 2010 Messages : 22 ![]() |
Bonjour à tous,
Bon j'essaye de développer un trigger sous oracle sans succès. Ce que je veux c'est que pour chaque insertion dans la table, le trigger vérifie l’existence d'une ligne similaire? Si elle existe il met à jour un champs de cette ligne, si non il l'ajout tout simplement. J'ai développer le trigger suivant mais ça me donne une erreur: Code :
Merci à tous. |
||
|
|
00
|
|
|
#2 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 447 ![]() |
Ce n'est pas possible de le faire par trigger. C'est à la partie applicative de le faire.
__________________
More Code : More Bugs. Less Code : Less Bugs |
|
|
00
|
|
|
#3 |
![]() ![]() |
Ou encore utiliser la commande MERGE qui est conçue spécifiquement pour cela.
__________________
Email : http://scr.im/waldar |
|
00
|
|
|
#4 |
|
Invité de passage
![]() Otmane MALIH Inscription : décembre 2010 Messages : 22 ![]() |
Je ne pense pas que c'est possible pour mon cas, car c'est une procédure qui insert ces lignes et je ne peux pas modifier son code.
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Otmane MALIH Inscription : décembre 2010 Messages : 22 ![]() |
|
|
|
00
|
|
|
#6 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 447 ![]() |
Tu ne peux pas lire la table "utilisée" par le trigger (cf table mutante)
__________________
More Code : More Bugs. Less Code : Less Bugs |
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Otmane MALIH Inscription : décembre 2010 Messages : 22 ![]() |
Pour utiliser Merge je dois pouvoir modifier la procédure qui charge les données, ce qui n'est pas possible pour moi.
Alors je reste avec les trigger. Le trigger que j'ai codé ne se compile pas. Merci de vérifier avec moi ou de me proposer un code qui fonctionne. Merci |
|
|
02
|
|
|
#8 |
|
Expert Confirmé Sénior
![]() Inscription : juillet 2003 Messages : 3 447 ![]() |
Ce n'est pas possible par trigger.
Au pire tu crées un synonyme qui pointe vers une autre table identique, et tu crées des triggers sur cette autre table qui fait les insertions / update / delete dans la table principale.
__________________
More Code : More Bugs. Less Code : Less Bugs |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com