|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() |
Bonjour,
Suite a une insertion dans ma base de donnée dans une table, j'ai un champ qui est autoincrémenté ( un trigger qui fait ça automatiquement), suite a cette insertion je veux utilisé cette valeur pour l'insérer dans une autre table. Est ce que je peux appelé une procédure stocké depuis le triggers ou bien sauvegardez cette valeur dans une variable globale . Best regards ! |
|
|
00
|
|
|
#2 |
|
Membre régulier
![]() Inscription : février 2005 Messages : 100 ![]() |
Normalement je pense que oui, mais après on n'est jamais certain de la validité de la valeur car un trigger est comme son nom l'indique un déclencheur et donc il répondra à toutes les insertions. Supposons que l'on ait l'exécution suivante avec deux utilisateurs se connectant de manière presque simulantée à la base données
Utilisateurs A et B A lance le trigger qui insère la valeur par exemple 2 B lance le trigger qui insère une autre valeur par exemple 3 A lit la valeur de la variable avec la procédure stockée : 3 B lit la valeur de la variable avec la procédure stockée : 3 Le fait de sauvegarder la valeur dans une variable globale semble plus sûre. A lance le trigger qui insère la valeur par exemple 2 et sauvegarde 2 B lance le trigger qui insère une autre valeur par exemple 3 et sauvegarde 3 A lit la valeur de la variable : 2 B lit la valeur de la variable : 3 |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() |
Merci.
Mais comment declaré une variable dans la quelle je peux sauvgarder une valeur puis la retrouvé par la suite pour l'inserer dasn uen autre table comme foreign key ? Merci |
|
|
00
|
|
|
#4 | |||
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
Citation:
Code :
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
|||
|
00
|
Copyright © 2000-2012 - www.developpez.com