SQL Apaostrohe dans une requète. [Résolu]

Signaler
Messages postés
59
Date d'inscription
lundi 11 janvier 2010
Statut
Membre
Dernière intervention
4 août 2015
-
Messages postés
59
Date d'inscription
lundi 11 janvier 2010
Statut
Membre
Dernière intervention
4 août 2015
-
Bonjour, Je programme avec Visual studio 2010 en Visual Basic avec une base de données Access. Je cherche à passer une chaine dans une commande SQL qui possède un apostrophe " ' " . Ex: Boeuf a l'oriental. Lorsque que la commande est exécuté il voie Boeuf a l. J'Utilise comme chaine:
 sNomRepas = Boeuf à l'oriental
ds = mod_BDD.LireRepas("SELECT * FROM Repas WHERE NomRepas = " & "'" & sNomRepas & "'")


Si quelqu'un a une solution passé Boeuf à l'oriental au complet .

Merci de votre aide

EDIT: Précision du langage dans la coloration syntaxique.

4 réponses

Messages postés
14760
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
19 janvier 2021
151
Pas beaucoup de solution.
Ce que tu fais, avec l'apostrophe, s'appelle une injection SQL.

Il faut que tu échappes ce caractère.
Une autre solution est d'utiliser une requête paramétrée.
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
232
Bonjour,
Pourquoi ceci ne marcherait-il pas ? ===>>
sNomRepas = "Boeuf a l'oriental"
ds = mod_BDD.LireRepas("SELECT * FROM Repas WHERE NomRepas = """ & sNomRepas & """")
Messages postés
14760
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
19 janvier 2021
151
Le problème n'est que déplacé, ce sera le caractère " qui posera problème.
Cela ne retire pas la possibilité d'injection.
Messages postés
59
Date d'inscription
lundi 11 janvier 2010
Statut
Membre
Dernière intervention
4 août 2015

Bonjour NHenry, c'est quoi une requête paramétrée ?

Merci
Messages postés
14760
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
19 janvier 2021
151
Messages postés
3258
Date d'inscription
jeudi 26 novembre 2009
Statut
Membre
Dernière intervention
3 décembre 2019
50
Messages postés
59
Date d'inscription
lundi 11 janvier 2010
Statut
Membre
Dernière intervention
4 août 2015

Merci pour vos réponses. Ma base de données est que pour moi alors je ne devrais pas passer de mauvaises informations. Je vais changer l'apostrophe par un autre caractère et le modifier l'or de l'affichage.

Merci