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 :

probleme insert into avec JDBC


Sujet :

JDBC Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 47
    Points : 34
    Points
    34
    Par défaut probleme insert into avec JDBC
    Bonjour

    J'utilise une base de donnee en JDBC sous easyphp, Quand jexecute le code suivant pour ajouter une ligne, ca ne marche pas sous eclipse (je rentre directement dans le catch) alors que sous easyphp ca marche. Pouvez vous m'aider deplus les requetes avec des select marchent correcteement.

    ma requete est:

    String query ="INSERT INTO test VALUES('28fsc6899d5','robefscr','Ducpsfont','0f23121c123')";

    Ma base est mysql 5 et tout les champs sont des varchar


    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
     
     
      public Connection Connexion()
     
      {
    	  Connection connexion = null;
    		try {
     
    			Class.forName(driver);
     
    			connexion = DriverManager.getConnection(base,user,pwd);
     
    		} catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
    		return connexion;
    	}
     
     
     
      public ResultSet executeQuery(String query) {
    	ResultSet results=null;
    	System.out.println("0");
    	try {
    		System.out.println("je passe l;a");
    		Connection con = Connexion();
    		Statement stmt = con.createStatement();
     
    		//results = stmt.executeQuery("Select * from test"); marche
    		results=stmt.executeQuery(query);
     
     
    	}catch(Exception e){
    		System.out.println("Querry is False");
     
      	}
    	return results;
      }

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Points : 480
    Points
    480
    Par défaut
    Bonjour,

    Je pense qu'une partie de la réponse se trouve dans l'exception attrapée par le catch.
    Est ce que l'on pourrait avoir la trace de l'exception?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 47
    Points : 34
    Points
    34
    Par défaut
    oui le detail est le suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    java.sql.SQLException: Can not issue data manipulation statements with executeQuery().
    	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)
    	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
    	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:926)
    	at com.mysql.jdbc.StatementImpl.checkForDml(StatementImpl.java:413)
    	at com.mysql.jdbc.StatementImpl.executeQuery(StatementImpl.java:1336)
    	at Database.executeQuery(Database.java:92)
    	at test.main(test.java:13)

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2008
    Messages : 380
    Points : 480
    Points
    480
    Par défaut
    Ok,

    Il faut essayer d'utiliser executeUpdate pour faire des insert:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    System.out.println("je passe l;a");
    Connection con = Connexion();
    Statement stmt = con.createStatement();
    results=stmt.executeUpdate(query);

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mars 2009
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : Mars 2009
    Messages : 47
    Points : 34
    Points
    34
    Par défaut
    jai trouve il faut faire un update et non pas un execute merci pour la piste

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

Discussions similaires

  1. [WD15] probleme insert into avec mysql et date?
    Par 3alit dans le forum WinDev
    Réponses: 6
    Dernier message: 21/11/2013, 19h59
  2. Probleme INSERT INTO avec un SELECT
    Par jujoluca dans le forum SQL
    Réponses: 2
    Dernier message: 09/01/2011, 13h14
  3. [MySQL] probleme avec INSERT INTO avec Mysql
    Par monlou dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 13/03/2010, 00h41
  4. INSERT INTO avec une valeur numéroauto
    Par priest69 dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 08/11/2005, 15h39
  5. probleme insert into
    Par w.b. dans le forum Langage SQL
    Réponses: 2
    Dernier message: 23/02/2005, 10h34

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