Bonjour,
j'ai des questions sur "instead of". En effet, quand un utilisateur entre des connée avec un insert, je voudrai que mon trigger modifie ces données. Le cas typique est le mot de passe que je veux que mon trigger crypte (mais le trigger fait d'autres choses avec le mot de passe, donc je ne peux pas le crypter auparavant). Donc je me suis dit "au lieu d'entrer les données, mon trigger va les traiter puis les rentrer".
Et là... j'ai réfléchi, et je me suis dit : mais je risque d'entrer dans une boucle infinie, non ? En effet, si au lieu d'entrer des données, j'entre des données, sur les données entrées, je vais faire "au lieu d'entrer, etc...".
Alors mes questions sont les suivantes :
-Le problème existe-t-il ? Bah oui, je n'ai pas testé (je ne cryptais pas les données jusqu'à maintenant, donc je n'avais pas rencontré le problème). J'imagine que les créateurs de base de données ont pu se rendre compte de se problème et dire que le trigger n'est pas appellé par lui même dans une insertion. Mais ils ont tres bien pu dire l'inverse : Comment ça marche ?
-Si le problème existe vraiment, existe-t-il une solution paliative ? Une méthode qui fait que ça peut fonctionner comme j'ai envie ?
Précision, mais je ne sais pas si elle est utile : c'est sous MSDE.
Partager