Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
927 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Probleme avec JDBC et procedures stockées oracle!

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Probleme avec JDBC et procedures stockées oracle!

n°1089427
inandjo
la faim justifie les moyens!
Posté le 19-05-2005 à 16:16:05  profilanswer
 

Bonjour,
 
j'ai une procedure stockée dans une base oracle 9i qui est la suivante:
 

Code :
  1. create or replace procedure myproc4(dno number, perc number)
  2. is
  3.   cursor emp_cur (dept_no number) is
  4.     select sal from emp where deptno=dept_no for update of sal;
  5.   empsal number(8);
  6. begin
  7.   open emp_cur(dno);
  8.   loop
  9.     fetch emp_cur into empsal;
  10.     exit when emp_cur%NOTFOUND;
  11.     update emp set sal=empsal*(perc/100)
  12.     where current of emp_cur;
  13.   end loop;
  14.   close emp_cur;
  15.   commit;
  16. end myproc4;


 
Dans la table emp, la column sal est un number(4,2).
 
Depuis mon code java, j'appelle cette PS de la maniére suivante:
 

Code :
  1. CallableStatement cs = con.prepareCall("{ call myproc4(?,?)}" );
  2.             cs.setString(1,deptno);
  3.             cs.setString(2,percentage);
  4.            
  5.             cs.registerOutParameter(1, Types.VARCHAR);
  6.             cs.registerOutParameter(2, Types.INTEGER);
  7.            
  8.             ResultSet res =(ResultSet) cs.executeQuery();                       
  9.            
  10.             while (res.next()){
  11.                 String s = res.getString(1)+"  "+res.getString(2);
  12.                 system.out.println(" PROC PARAMS ARE : "+s);
  13.             }
  14.             cs.close();
  15.             res.close();
  16.            
  17.         } catch (SQLException sqle){
  18.             ...;
  19.         }       
  20.     }


 
Quand j'execute mon code, je recois l'erreur suivante:
 

Code :
  1. ORA-00600: code erreur interne, arguments : [12259], [], [], [], [], [], [], []


 
J'ai googler cette erreur, mais je n'ai rien trouvé de significatif, et ce d'autant que la colonne sal n'est pas updater.
Je ne comprends pas l'erreur qui bloque et empeche cet update, d'autant que j'ai change percentage de int, a double et meme float dans mon code java, mais ces changements ont été sans effets notables!
 
Merci!


---------------
The bible was written by people who believed the earth was flat!
mood
Publicité
Posté le 19-05-2005 à 16:16:05  profilanswer
 

n°1089433
cesarr89
Posté le 19-05-2005 à 16:18:54  profilanswer
 

Tu as un catch, mais il est ou le try ?

n°1089445
cesarr89
Posté le 19-05-2005 à 16:23:03  profilanswer
 

Au fait, essaie avec :
ResultSet res =(ResultSet) cs.execute();
au lieu de:
ResultSet res =(ResultSet) cs.executeQuery();  

n°1089481
inandjo
la faim justifie les moyens!
Posté le 19-05-2005 à 16:31:18  profilanswer
 

le try est juste avant le CallableStatement mais j'avais pas jugé utile de le mettre.
Quand a changer executeQuery() en execute(), ca n'a rien donné, d'autant que execute retourne un boolean, et non un ResultSet!
Merci


---------------
The bible was written by people who believed the earth was flat!
n°1089492
cesarr89
Posté le 19-05-2005 à 16:33:52  profilanswer
 

Bah d'accord mais ta procédure, elle renvoie pas un resultset.

n°1089504
inandjo
la faim justifie les moyens!
Posté le 19-05-2005 à 16:37:55  profilanswer
 

Non effectivement, ma procedure ne fait qu'un update au niveau de la base de donnée, je ne retourne rien.
Mais toujours est-il que cs.execute() n'est pas 'true'.
Le ResultSet est juste la pour faire joli! -_-


---------------
The bible was written by people who believed the earth was flat!

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Probleme avec JDBC et procedures stockées oracle!

 

Sujets relatifs
Problème bizarre sur un programme en batch! help!Probleme compatibilité bibliotheque labview/visualc++
Problème PHP IISDOM et XSLT : problème hardu
[CSS] Problème avec les div pour remplacer les tableauxProbleme avec le DOM
Pourquoi c'est tellement lent ?[PHP / Sendmail] probleme lors de l'envoi d'un mail
probleme d'affichage des donnees avec jfreechart[PERL] Problème d'inclusions ...
Plus de sujets relatifs à : Probleme avec JDBC et procedures stockées oracle!


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR