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 :

Gérer les guillemets


Sujet :

JDBC Java

  1. #1
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 173
    Points : 39
    Points
    39
    Par défaut Gérer les guillemets
    Bonjour
    j'aimerai bien savoir comment gérer les guillemets en JAVA pour pouvoir executer une requete SQL?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    String requete=" INSERT INTO "Etudiant" ("ID_Etudiant","Nom","Adresse") values ('?','?','?);
    j'ai essayé de remplacé " par ' mais ça n'a pas marché.

  2. #2
    Membre régulier
    Homme Profil pro
    Développeur java, .Net
    Inscrit en
    Janvier 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur java, .Net

    Informations forums :
    Inscription : Janvier 2011
    Messages : 55
    Points : 71
    Points
    71
    Par défaut
    bonjour,

    Tu n'as pas besoin de ' entre les ?.
    De plus les " pour les noms de colonnes et de table sont inutiles.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 173
    Points : 39
    Points
    39
    Par défaut
    le probleme est au niveau du nom de la BDD et le noms des colonnes, j'utilise PostgreSQL, et ça m'exige de mettre les "" car sans ça la requete ne passe pas et il me dit que la bdd avec se nom n'existe pas.

  4. #4
    Modérateur
    Avatar de MasterMbg
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2011
    Messages
    719
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Congo-Kinshasa

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 719
    Points : 1 493
    Points
    1 493
    Par défaut
    Bonjour,
    Remplace :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    " INSERT INTO "Etudiant" ("ID_Etudiant","Nom","Adresse") values ('?','?','?);
    par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     "INSERT INTO Etudiant (ID_Etudiant,Nom,Adresse) values (?,?,?)";
    Et tout se passera bien je pense.

  5. #5
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    Citation Envoyé par scholes Voir le message
    le probleme est au niveau du nom de la BDD et le noms des colonnes, j'utilise PostgreSQL, et ça m'exige de mettre les "" car sans ça la requete ne passe pas et il me dit que la bdd avec se nom n'existe pas.
    Ca c'est parce que la table a été créée avec le pieds, heu je veux dire, avec des guillemets là où il n'en fallait pas.

    En SQL, les guillement autour d'un nom de table ou de colonne désactive le mode "insensible à la casse". Du coup en faisant un create table "Etudiant", la table s'est trouvé nommée Etudiant plutot que ETUDIANT, qui est le défaut en SQL. Quand tu fais une requete après sans guillement, postgresql cherche la table "ETUDIANT" qui n'existe pas.

    Solution: récréé ta table correctement, ça vaut pas le coup d'aller rendre ton code illisible à cause de ça.

  6. #6
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 173
    Points : 39
    Points
    39
    Par défaut
    C'est ça mon problème, je n veux pas recréer mes tables, du coup je cherche une solution pour ses guillemets.
    Et concernant l’écriture
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "INSERT INTO ETUDIANT (..."
    , ça ne résoud pas le problème.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 173
    Points : 39
    Points
    39
    Par défaut
    Juste je veux noter que j'ai fait la creation des table via pgAdminIII et que je n'ai pas mis de guillemets, donc c'est lui qui a fait l'insertion des guillemets automatiquement.

  8. #8
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 482
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 482
    Points : 48 807
    Points
    48 807
    Par défaut
    C'est expliqué ici

    http://wiki.postgresql.org/wiki/FAQ#...t_preserved.3F



    pour mettre des quote dans un string java, il suffit de les précéder par \, que le compilateur ne considère pas ça comme une fin de string. Néanmoins, corriger tes tables est quand même plus propre.

  9. #9
    Nouveau membre du Club
    Inscrit en
    Avril 2008
    Messages
    173
    Détails du profil
    Informations forums :
    Inscription : Avril 2008
    Messages : 173
    Points : 39
    Points
    39
    Par défaut
    Merci beaucoup pour vos réponses, ça m'a permis d'avancer.

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

Discussions similaires

  1. [D5][SQL Server] Conserver des images dans la BDD
    Par FONKOU dans le forum Bases de données
    Réponses: 8
    Dernier message: 08/06/2008, 19h58
  2. [Frame] Gérer les composants
    Par chastel dans le forum Débuter
    Réponses: 4
    Dernier message: 07/05/2004, 17h57
  3. Gérer les clics sur les boutons
    Par cyberlewis dans le forum Windows
    Réponses: 4
    Dernier message: 08/02/2004, 15h34
  4. Comment gérer les espaces blancs?
    Par Lambo dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 16/05/2003, 09h44
  5. gérer les jpg dans une fenetre directdraw???
    Par Anonymous dans le forum DirectX
    Réponses: 1
    Dernier message: 14/06/2002, 13h39

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