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 :

requete insert access


Sujet :

JDBC Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 154
    Par défaut requete insert access
    Bonjour,

    j'ai une appli où je cherche à inserer dans ma bdd une instance de "réponses"

    cependant j'ai une erreur que je n'arrive à résoudre :

    java.sql.SQLException: [Microsoft][Pilote ODBC Microsoft Access] Erreur de syntaxe dans l'instruction INSERT INTO.
    la requete :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    final String query ="insert into reponses values(,,"+answ+",'',,"+q.getId()+")";
    et les types de champs sont :

    (NuméroAuto,Numérique,Texte,Objet OLE,Numérique,Numérique)


    je vous poste l'erreur quand je met des cotes partout car elle est différente :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    final String query ="insert into reponses values('','',"+answ+",'','',"+q.getId()+")";
    java.sql.SQLException: [Microsoft][Pilote ODBC Microsoft Access] Trop peu de paramètres. 1 attendu.


    merci à vous

  2. #2
    Membre Expert Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Par défaut
    Essaye avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    String query ="insert into reponses(Texte,Numérique) values('"+answ+"','"+q.getId()+"') ";

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 154
    Par défaut
    Salut,

    merci pour ta réponse, ça fonctionne nikel
    j'avais le souvenir qu'on pouvait laisser des champs vide mais c'est probablement un souvenir érroné ^^

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 154
    Par défaut
    ah juste une question, si ma chaine de caractère contient une virgule, cela "coupe" la requete SQL, du coup il y aurait il un moyen que access n'interprete pas cela comme une virgule?

  5. #5
    Membre Expert Avatar de Ivelios
    Homme Profil pro
    Développeur Java
    Inscrit en
    Juillet 2008
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 031
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    "...values('"+answ+"','"+q.getId()+"')"
    //est différent de 
    "...values("+answ+","+q.getId()+")"
    Il me semble que les "simple quote : ' " sont là pour éviter ça.
    Autrement, utilise des PreparedStatement

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 154
    Par défaut
    pour illustrer mon problème :

    si je tape dans mon JtextArea:

    relativement bon, dans l'ensemble


    je genère cette erreure :

    java.sql.SQLException: [Microsoft][Pilote ODBC Microsoft Access] Erreur de syntaxe (opérateur absent) dans l'expression ''relativement bon, dans l'ensemble','2')'.



    ce n'est pas la virgule qui pose probleme mais la quote

Discussions similaires

  1. Requete d'insertion access
    Par sambzh24 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 25/05/2008, 16h22
  2. Requete Insert vers table access distante
    Par Sam 069 dans le forum VBA Access
    Réponses: 1
    Dernier message: 22/09/2007, 12h08
  3. VB6 access requete INSERT
    Par vodasan dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 02/06/2007, 17h46
  4. [VB.NET]Requete INSERT dans base de données access
    Par mael94420 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 05/10/2006, 13h57
  5. [VB .NET]Requete Insert vers une BD access
    Par Skunk007 dans le forum Windows Forms
    Réponses: 3
    Dernier message: 08/04/2006, 18h17

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