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 :

Procédure stockée SQL Server


Sujet :

JDBC Java

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 5
    Points : 6
    Points
    6
    Par défaut Procédure stockée SQL Server
    Bonjour,
    ne trouvant pas de solution à mon problème, je me permet de créer un nouveau sujet.

    Voici le soucis que je rencontre :

    Dans le cadre d'un projet, j'utilise donc des procédures stockées SQL Server, que j'appelle par la suite dans mon code Java.

    Le problème, c'est que Java me ressort toujours le même message d'erreur : L'instruction n'as pas envoyé le jeu de résultat...
    Lorsque j'exécute directement ma procédure dans SQL Management Studio, J'ai bien mon retour.

    Voici mon code:

    La procédure :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    CREATE PROCEDURE PROC @NOM VARCHAR(255), @PRENOM VARCHAR(255), @DATE_NAISS DATE
    AS
    	INSERT INTO MA_TABLE (@NOM, @PRENOM, @DATE_NAISS);
    	SELECT ID_SALARIE WHERE NOM_NAISSANCE=@NOM AND PRENOM=@PRENOM AND DATE_NAISSANCE=@DATE_NAISS
    GO


    Le code JAVA :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    int ID = 0;
     
    CallableStatement stm = conn.prepareCall("{call PROC(?,?,?)}");
                stm.setString(1, NOM);
                stm.setString(2, PRENOM);
                stm.setDate(3, Date_Naiss);
                ResultSet rs = stm.executeQuery();
                while(rs.next())
                {
                    ID = rs.getInt(1);
                }
                rs.close();
                stm.close();
    Merci de votre aide

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 797
    Points
    4 797
    Par défaut
    Faut ajouter "SET NOCOUNT ON" avant de lancer ta procédure !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    String sql = "EXEC PROC ";
    Connexion conn ...
    Statement st = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
    ResultSet rs = rs.executeQuery("SET NOCOUNT ON " + sql);
    après tu adaptes pour utiliser un PreparedStatement (c'est mieux ...)
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2013
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    A priori cela fonctionne!

    J'étais bloqué sans trouver depuis plusieurs jours !

    Merci beaucoup !

  4. #4
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 711
    Points : 4 797
    Points
    4 797
    Par défaut
    Ben t'étais pas le seul.

    C'est un truc bizarre qui est apparu avec le dernier driver jdbc de sql server.
    Cela ne le faisait pas avant.
    Bilou avait encore picolé ...
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

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

Discussions similaires

  1. Problème LIKE Procédure stocké SQL Server 2000
    Par Pilhole dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 18/02/2008, 09h24
  2. Procédures stockées SQL Server, récupération sous Delphi
    Par rophi dans le forum Bases de données
    Réponses: 10
    Dernier message: 03/12/2007, 14h48
  3. Réponses: 1
    Dernier message: 04/03/2007, 15h40
  4. [procédure stockée][SQL server]Extraction, réinsertion
    Par caelum dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 14/02/2006, 07h59
  5. Procédures stockées SQL Server compatibles avec MySQL ?
    Par Nen'S dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 24/01/2006, 19h18

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