Précédent   Forum des professionnels en informatique > Bases de données > Oracle > PL/SQL
PL/SQL Forum d'entraide sur le PL/SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/08/2007, 14h11   #1
Membre confirmé
 
Thomas Gambier
Inscription : avril 2005
Messages : 807
Détails du profil
Informations personnelles :
Nom : Thomas Gambier
Âge : 28
Localisation : France, Drôme (Rhône Alpes)

Informations forums :
Inscription : avril 2005
Messages : 807
Points : 243
Points : 243
Par défaut gerer exception en pl/sql

Bonjour,

Je cherche à faire une fonction, et j'ai une erreur, mais je ne comprend pas pourquoi...

Voila le code de ma fonction:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
--  Cette fonction teste la possibilité d'une valeur dans une case donnée
--     Entrée : x : 1..9, y : 1..9, val : 1..9
--     Sortie : -1 = Cette valeur n'est plus présente
--               0 = Cette valeur est encore possible
--               1 = Cette valeur a été positionné par l'utilisateur
--
FUNCTION GetValue(p_x number, p_y number, p_val number) RETURN number IS
begin
SELECT flag_case INTO result FROM grille_sudoku WHERE coordX=p_x AND coordY=p_y AND val_case=p_val;
RETURN result;
 
EXCEPTION
 WHEN NO_DATA_FOUND THEN
  RETURN(-1);
 
end;
L'erreur est statement ignored...

Dans ma table, flag_case vaut 0(valeur encore possible) ou 1(valeur positionné par l'utilisateur)
Ma syntaxe est elle bonne pour l'exception?
calitom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 14h24   #2
McM
Expert Confirmé Sénior
 
Inscription : juillet 2003
Messages : 3 450
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 3 450
Points : 4 209
Points : 4 209
Code :
CREATE OR REPLACE FUNCTION ....
__________________
More Code : More Bugs. Less Code : Less Bugs
McM est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 14h27   #3
Membre confirmé
 
Thomas Gambier
Inscription : avril 2005
Messages : 807
Détails du profil
Informations personnelles :
Nom : Thomas Gambier
Âge : 28
Localisation : France, Drôme (Rhône Alpes)

Informations forums :
Inscription : avril 2005
Messages : 807
Points : 243
Points : 243
non, elle est déclarée ailleurs, l'erreur ne vient pas de la...
calitom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/08/2007, 14h36   #4
Membre confirmé
 
Thomas Gambier
Inscription : avril 2005
Messages : 807
Détails du profil
Informations personnelles :
Nom : Thomas Gambier
Âge : 28
Localisation : France, Drôme (Rhône Alpes)

Informations forums :
Inscription : avril 2005
Messages : 807
Points : 243
Points : 243
j'ai trouvé!
En fait j'avais juste oublié de déclarer ma variable result...

Voila le code qui marche:
Code :
1
2
3
4
5
6
7
8
9
10
11
function GetValue(p_x number, p_y number, p_val number) return number is
result number;
begin
select flag_case into result from grille_sudoku where coordX=p_x and coordY=p_y and val_case=p_val;
return result;

EXCEPTION
 WHEN NO_DATA_FOUND THEN
  return(-1);
end;
Merci quand meme!!
calitom est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h08.


 
 
 
 
Partenaires

Hébergement Web