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 :

erreur lors de la compilation


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
    Octobre 2003
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 504
    Par défaut erreur lors de la compilation
    bonsoir,

    j'ai un petit probleme au niveau de la programmation :

    j'essaye par un Resulset de prendre l'identifiant du nom que je viens de taper pour que je puisse le retransmettre dans une seconde requette

    res etant un Resulset

    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
     try{
    				 java.sql.Connection con = DriverManager.getConnection("jdbc:mysql://localhost/Ecommerce","root","");
    				 System.out.println("bonne connexion");
     
    				 String sq="Select nom,prenom from Client";
     
     
     
    				 Statement st =con.createStatement();
    				 ResultSet re =st.executeQuery(sq);
    				 if (re.next())
    				 {
    					 if (re.getString("nom").equals(textnomclient.getText())&&re.getString("prenom").equals(textprenom.getText()))
    					 {
     
    						re.close();
    						st.close();
    						con.close();
    						System.out.println("la personne existe ");
    					 }
    					 else
    					 {
     
     
    				 String  sql="INSERT INTO Client (idclient,nom,prenom,adresse,ville,codepostale,pays,pseudo,password,email)"+
    			     "values("+"NULL,'"+textnomclient.getText()+"','"+textprenom.getText()+"','"+adresse+"','"+ville+"',"+code+
    			     ",'"+pays+"','"+pseud+"','"+pass+"','"+mail+"')";
     
    			     PreparedStatement s =con.prepareStatement(sql);
     
     
    			s.executeUpdate(sql);
     
     
    					s.close();
     
     
    					 con.close();
    					 System.out.println("execution ok");
     
    					 String sqlc ="select idclient from Client where nom="+textnomclient.getText();
    			           Statement sta =con.createStatement();
    			           res= sta.executeQuery(sqlc);
    			           sta.close();
    			           con.close();
    			           System.out.println("transmission ok");
     
     
     
    					 }  
     
    				 }
     
     
     
     
    			 }catch(SQLException e2)
    			 {
    				 System.out.println( e2.toString());
    			 }
     
    		}
    l'erreur que m'indique le compilateur :
    com.mysql.jdbc.exceptions.MySQLNonTransientConnectionException: No operations allowed after connection closed.

    merci !

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2006
    Messages
    238
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 238
    Par défaut
    Salut,

    Il me semble que tu ferme la connection :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    con.close(); // tu ferme la connection...
    System.out.println("execution ok");
    String sqlc ="select idclient from Client where nom="+textnomclient.getText();
    Statement sta =con.createStatement(); // ...et là tu l'utilise, je pense pas que ca puisse marcher
    voila regarde si ton problème ne vient pas de là.

    Personnelement j'aurai plus fait un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    try{
        // tes opérations
    } catch (SQLException e) {
        // traitement de l'erreur
    } finally {
        try { con.close (); } catch (SQLException e) {}
    }
    De cette facon tu ouvre ta connection, tu l'utilise et tu la ferme que quand tu as tout terminé ou qu'il y a eu une exception.
    Le bloc finally est exécuté apres le bloc try ou catch selon qu'il y ai eu une exception ou pas.

    voila a+

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 504
    Par défaut
    bonjour,

    je te remercie c'est bien ça .

    merci !

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 09/04/2015, 11h01
  2. Erreur lors de la compilation de MySQL
    Par webrider dans le forum SUSE
    Réponses: 2
    Dernier message: 06/03/2007, 11h21
  3. Erreur lors de la compilation avec OmniORB
    Par JohnKwada dans le forum CORBA
    Réponses: 1
    Dernier message: 07/09/2006, 17h34
  4. erreur lors de la compilation
    Par ksoft dans le forum MFC
    Réponses: 2
    Dernier message: 02/05/2006, 15h40
  5. Réponses: 4
    Dernier message: 22/02/2006, 14h11

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