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 :

Problème avec INSERT INTO


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 49
    Par défaut Problème avec INSERT INTO
    Bonjour,

    j'ai une fonction qui sert à enregistrer un utilisateur dans la BDD :
    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
     
    public static void saveUtilisateur(Utilisateur userActuel){
     
    		//----------------- Exécution de la requête ---------------------\\
     
    				// On appel la méthode ConnexionBase de la classe Connexion pour éablir une connexion avec la BDD
    					Connection connection = Connexion.ConnexionBase();
     
    					try
    					{
    						//Création d'un objet Statement (exécute et retourne une requête SQL)
    						Statement state = connection.createStatement();
     
     
    						state.executeUpdate("INSERT INTO utilisateur (idUtilisateur, nomUtilisateur, prenomUtilisateur,	login, password, email Croissant, admin, dateCreationUtilisateur, dateDernierAcces) VALUES (5 , '" + userActuel.nom + "', '" + userActuel.prenom + "', '" + userActuel.login + "', '" + userActuel.email + "', '" + userActuel.dateCreation + "', '" + userActuel.dateDernierAcces + "' )");
     
    					} catch (Exception e) {
    						e.printStackTrace();
    					}
     
    		}

    Ce code me retourne :

    com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Croissant, admin, dateCreationUtilisateur, dateDernierAcces) VALUES (5 , 'Delorm' at line 1
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
    at com.mysql.jdbc.Util.getInstance(Util.java:384)
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1054)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3562)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3494)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1960)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2114)
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2690)
    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1648)
    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1567)
    at Utilisateur.saveUtilisateur(Utilisateur.java:93)
    at test.main(test.java:19)


    Pouvez vous m'éclairer?

    Merci.

  2. #2
    Membre confirmé
    Inscrit en
    Avril 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 76
    Par défaut
    Bonjour,

    Dans ta requete c'est ecris "email Croissant" avec un espace!

    Est-ce normal?

  3. #3
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 49
    Par défaut
    Non, je sais pas ce que ça faisait là

    Je l'ai enlevé et j'ai encore des erreurs :

    java.sql.SQLException: Column count doesn't match value count at row 1
    at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1075)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3562)
    at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3494)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1960)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2114)
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2690)
    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1648)
    at com.mysql.jdbc.StatementImpl.executeUpdate(StatementImpl.java:1567)
    at Utilisateur.saveUtilisateur(Utilisateur.java:84)
    at test.main(test.java:25)

  4. #4
    Membre confirmé
    Inscrit en
    Avril 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 76
    Par défaut
    Lis bien tes messages d'erreurs car la plupart du temps il te donne exactement là où ça cloche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java.sql.SQLException: Column count doesn't match value count at row 1
    Ta pas mis le password et le login!

    Vérifie que tu ajoutes autant de values que tu en déclares.

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2008
    Messages
    76
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 76
    Par défaut
    Pardon c'est le password qui manque.

  6. #6
    Membre averti
    Inscrit en
    Janvier 2008
    Messages
    49
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 49
    Par défaut
    Merci ca marche bien maintenant

Discussions similaires

  1. problème avec insert into
    Par ulysse031 dans le forum JDBC
    Réponses: 14
    Dernier message: 04/05/2007, 20h01
  2. problème avec insert into
    Par ulysse031 dans le forum SQL Procédural
    Réponses: 5
    Dernier message: 29/04/2007, 15h40
  3. Problème avec INSERT INTO
    Par Armaklan dans le forum Oracle
    Réponses: 3
    Dernier message: 28/02/2007, 11h15
  4. Réponses: 12
    Dernier message: 25/11/2005, 12h29
  5. Réponses: 3
    Dernier message: 10/05/2005, 11h02

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