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

Requêtes et SQL. Discussion :

Problemes avec insert into et les simple quote


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2014
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2014
    Messages : 63
    Points : 37
    Points
    37
    Par défaut Problemes avec insert into et les simple quote
    Bonjour,

    je travaille actuellement sur une base access 2013, lors d'un enregistrement dans un formulaire, je voulais doubler cette enregistrement dans une table qui a besoin des données similaire

    Mon problemes est que , tout marche très bien ( jusque la ça va ) sauf quand un de mes champs texte a une simple quote, car ça en rajoute une dans ma requete d'insert into en VBA et du coup la requete ne s'éxecute plus

    Comme il s'agit d'un problemes récurant en sql je pense qu'une solution existe déjà mais je ne la trouve pas :'( je n'ai pas entièrement fouiller les archives du site mais je suis entrain et je trouve rien a propos de ça :'(


    Merci d'avance !

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    Bonjour,

    Mon probleme est que , tout marche très bien ( jusque là, ça va ) sauf quand un de mes champs texte a une simple quote, car ça en rajoute une dans ma requete d'insert into en VBA et du coup la requete ne s'éxecute plus
    Pas très claire ton explication.

    Montre un exemple concret.
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

  3. #3
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Et bien helas non. Il faut le faire soit meme.

    L'appostrophe (ou simple quote) peut etre utiliser comme delimiteur de chaine dans du SQL et donc completement perturber Access.

    Bon personnellement je prefere le guillemet (ou double quote) comme delimteur mais le probleme est le meme.

    Tu as deux possibilite
    1. soit tu utilises un objet recordset a la place de ton SQL et la tu n'as plus aucun probleme.
    2. soit tu double l'appostrophe avant d'utiliser ton SQL, un truc du genre TonChampSQL=replace(TonChamp,"'", "''").


    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2014
    Messages
    63
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 30
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juin 2014
    Messages : 63
    Points : 37
    Points
    37
    Par défaut
    j'ai donc une requete

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dim Requete As String
    Requete="insert into TABLE(nom,prenom,age) values(' " & Me.Nom & " ' , " & Me.Prenom & " ', " & Me.Age & ");"
    Cette requete marche très bien, le seul problème que j'ai c'est quand on entre un nom avec une apostrophe

    je vous montre un exemple

    Insert into TABLE(nom,prenom,age)values( 'Jean',' D'après', 25);
    l'apostrophe du d'après fait planter ma requete :/

  5. #5
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 331
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 331
    Points : 23 786
    Points
    23 786
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Requete="insert into TABLE(nom,prenom,age) values(' " & replace(Me.Nom,"'","''") & " ' , " & replace(Me.Prenom,"'","''") & " ', " & replace(Me.Age,"'","''") & ");"
    devrait resoudre ton probleme.

    A+
    Vous voulez une réponse rapide et efficace à vos questions téchniques ?
    Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
    Et aussi regardez dans la FAQ Access et les Tutoriaux Access. C'est plein de bonnes choses.

  6. #6
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 594
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 78
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 594
    Points : 282 192
    Points
    282 192
    Par défaut
    J'ai l'impression que deux « ' » au lieu d'un seul ne résoudra pas le problème.

    Je remplacerais le « ' » par un pipe « | » et j'ajouterais une étape pour rebaptiser le pipe en apostrophe dans la cible.
    SVP ne m'envoyez pas de messages privés pour poser des questions techniques, vous n'aurez pas de réponse !

Discussions similaires

  1. probleme avec insert into
    Par diawdji dans le forum VB 6 et antérieur
    Réponses: 0
    Dernier message: 28/01/2008, 02h00
  2. probleme avec insert into
    Par pseudobidon57 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 09/10/2007, 14h05
  3. probléme avec insert into et les jontures
    Par belakhdarbts10 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 10/05/2007, 11h35
  4. Probleme avec INSERT INTO et select
    Par jmjmjm dans le forum Requêtes
    Réponses: 9
    Dernier message: 28/01/2007, 22h51
  5. probleme avec insert into
    Par bscorpion dans le forum Langage SQL
    Réponses: 5
    Dernier message: 05/07/2005, 13h00

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