Test d’existence avant UPDATE d'un enregistrement
Bonsoir à tous,
Deux utilisateurs accèdent au même enregistrement. Le 1er supprime l’enregistrement le 2eme le vois toujours et pourrait l'editer et poster les modifications. Donc pour l’en empêcher puisque la ligne n’existe plus, j’essaye de faire un teste d’existence dans un Trigger update :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
CREATE OR ALTER TRIGGER TEST_BU0 FOR TEST
ACTIVE BEFORE UPDATE POSITION 0
AS
DECLARE VARIABLE RES INTEGER;
DECLARE VARIABLE MES VARCHAR(100);
BEGIN
IF (COALESCE(NEW.ID,0)<>0) THEN
BEGIN
SELECT 1 FROM TEST WHERE ID=NEW.ID INTO :RES;
RES=COALESCE(:RES,0);
IF (:RES=0) THEN
BEGIN
MES ='L''ENREGISTREMENT A ETE SUPPRIMER';
EXCEPTION NOT_FOUND MES;
END
END
END |
Cette méthode ne fonctionne pas et j’ai du dépanner avec un SELECT avant de faire l’UPDATE depuis le client pour tester l’existence de la ligne en attendant de trouver une solution qui pourrait s’appliquer dans un trigger. Pourriez-vous SVP m’eclairer ?
Merci