IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

[CallableStatement] pb insertion de parametres


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut [CallableStatement] pb insertion de parametres
    Bonjour, j'ai un petit probleme dont je ne comprends pas la cause.
    je veux lancer une procédure stockée avec des paramètres mais malheureusement cela ne fonctionne pas !

    voici mon code Java :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    String sql = {call lancer_job(?,?)};
    Date date = getDate(); // Java.sql.date
    String s = "'AM_TEST;'" // il y a des 'cotes' autour de AM_TEST
    CallableStatement st = connexion.prepareCall(sql);
    st.setString(1,s);
    st.setDate(2,date);
    st.execute();
    A priori le code est bon, mais seulement j'ai une erreur ORacle derrière !!
    je vous met le code de lancer_job :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    CREATE OR REPLACE PROCEDURE lancer_job(unNom IN VARCHAR2, uneDate IN 
    DATE) IS
      pl_no_job BINARY_INTEGER;
      BEGIN
          DBMS_JOB.submit(pl_no_job, unNom, uneDate, 'sysdate+1');
          commit;
      END lancer_job;
    /
    Suite a l'execution du statement j'ai une erreur qui apparait : mais je ne la comprends pas !!

    ORA-06550: line1, column 125 :
    PLS-00103 : Encoutered the symbol "END" when expecting one of the following:
    := . 5 @ % ;
    The symbol ";" was substitued for "END" to continue.
    ORA-06512: at "SYS.DBMS_JOB", line 79
    ORA-06512: at "SYS.DBMS_JOB", line 136
    ORA-06512: at "F.LANCER_JOB", line 5


    le probleme c'est que j'avais tester cette méthode en dur !!
    avec le submit avec que de parametre en dur le call fonctionne tres bien (sans paramètre biensur) et cela marchait : voici la ligne du submit dans le fichier sql.

    DBMS_JOB.submit(pl_no_job, 'AM_TEST;', sysdate, 'sysdate+1');

    Donc mon probleme est de passer les bon paramètres via la méthode call...

    si quelqu'un voit ou il y a une erreur je veux bien qu'il m'aide

    merci d'avance.

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut
    j'ai oublié de préciser la description de DBMS_JOB.submit
    DBMS_JOB.submit(JOB out BINARY_INTEGER, WHAT IN VARCHAR2, NEXT_DATE IN DATE, INTERVAL IN VARCHAR)

    un exemple est fournit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    VARIABLE jobno number;
    BEGIN
       DBMS_JOB.SUBMIT(:jobno,'nom(param);', SYSDATE, 'SYSDATE+1');
       commit;
    END;

  3. #3
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    au cas où ... ?

    t'es sûr que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String s = "'AM_TEST;'";
    c'est pas ça plutot :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String s = "'AM_TEST';";

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Insertion des parametres OleDB
    Par ouadie99 dans le forum C#
    Réponses: 5
    Dernier message: 03/03/2009, 10h39
  2. PLSQL Insertion dans une table parametré
    Par IcedLand dans le forum PL/SQL
    Réponses: 1
    Dernier message: 07/12/2007, 18h07
  3. Requete parametre insert
    Par neuneu1 dans le forum Bases de données
    Réponses: 8
    Dernier message: 23/04/2007, 11h41
  4. [CallableStatement] pb insertion de parametre
    Par lilou77 dans le forum JDBC
    Réponses: 6
    Dernier message: 03/10/2006, 10h49
  5. Réponses: 2
    Dernier message: 21/07/2005, 14h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo