RDV+DIAL chat illimit� dans ta r�g!
no save
Assistance
Achat
News

Forum | programmation
[PL/SQL] Exception NO_DATA_FOUND
B@|-|@N, le lun. 16 janv. 2006 à 16:11:33
Bonjour à toutes et à tous.

Débutant en PL/SQL avec une doc assez mince et n'ayant pas d'accès au web si ce n'est limité (très limité), je voudrais vous poser une question.

Voilà à quoi ressemble mon code, pour l'instant :

DECLARE
var1 NUMBER;
SELECT 1 INTO var1 FROM table1 WHERE champ1='toto';
var2 table2.champ2%TYPE;
SELECT champ2 INTO var2 FROM table2;
BEGIN
IF var1 =1 THEN
UPDATE table3 blablabla;
COMMIT;
END IF;
EXCEPTION
WHEN NO_DATA_FOUND THEN
INSERT INTO table3 blablabla2
COMMIT;
END;

Mon problème vient de l'exception NO_DATA_FOUND. Bon, l'explication du code est la suivante :
    - La requête qui impacte table1 va avoir ou non un enregistrement parmi plusieurs répondant à la clause champ1='toto'.
    - Le résultat de cette requête est envoyée dans la variable var1.
    - L'exception NO_DATA_FOUND va traiter en fait le cas où il n'y aurait pas d'enregistrement répondant à la clause champ1='toto'.

Le truc, c'est que je ne sais pas si l'exception NO_DATA_FOUND va se lever si dans ma deuxième requête, il n'y a pas d'enregistrement ?

En gros, si on définit plusieurs requêtes dans le DECLARE et qu'on lève l'exception NO_DATA_FOUND. Est-ce qu'on va "aller" dans cette exception si n'importe quelle requête ne ramène pas d'enregistrement, ou alors est-ce que je peux clairement affecter cette exception NO_DATA_FOUND à une requête particulière ?

Bahan, compliquééééé X_X



yannsar
janv. 06
Suivant
REPONSES
yannsar
janv. 06
B@|-|@N
janv. 06
yannsar
janv. 06
Version Web
Réalisé par RedShift
no save