Plateformes d'assistanceDiscussions & Opinions des Communautés
|
|
|
|
[PL/SQL] Exception NO_DATA_FOUND
Dernière réponse le 16 jan 2006 à 17:10:28 B@|-|@N, le 16 jan 2006 à 16:11:33Bonjour à 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 Close the world.||.txen eht nepO
Meilleures réponses pour « [PL/SQL] Exception NO_DATA_FOUND » dans :
PL/SQL - Introduction au langage PL/SQL Voir Introduction au langage PL/SQL
Le langage PL/SQL est un langage L4G (entendez par ce terme un langage de quatrième génération),
fournissant une interface procédurale au SGBD Oracle. Le langage PL/SQL intègre parfaitement le langage SQL
en lui...
SQL - Tri VoirTri des résultats
Il est possible en SQL d'organiser les résultats grâce à
la clause ORDER BY. La clause ORDER BY est suivie des mots clés ASC
ou DESC, qui précisent respectivement si le tri se fait de manière croissante (par défaut)
ou...
SQL - Jointures VoirExpression des jointures
Une jointure (ou θ-jointure) est un produit cartésien de deux tables. On appelle
équijointure une θ-jointure dont la qualification est une égalité entre deux colonnes.
En SQL, l'expression d'une jointure se...
SQL - Restriction VoirExpression des restrictions
Une restriction consiste à sélectionner les lignes satisfaisant à
une condition logique effectuée sur leurs attributs.
En SQL, les restrictions s'expriment à l'aide de la clause WHERE suivie
d'une condition logique...
Pour que ton exception marche, il faut que ta requete soit à l'interieur de ton begin (si mes souvenirs sont bons).
|

