Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

SQL et caractères spéciaux

5 réponses
Avatar
Rlapt
Bonjour à tous,

Dans une requête SQL, que doit on faire pour passer des caractères comme le
guillemet et l'apostrophe dans un texte.

Ex Dans une clause SQL :
"WHERE ((([Texte base].[Texte de base])='" & MaFeuille.Cells(I, 1) & "' ));"

où le texte de MaFeuille.Cells(I, 1) est égal à -> l'objet "Essai"
C'est à dire un texte comprenant au moins une apostrophe et un guillemet


question également valable pour INSERT INTO. Mais les solutions doivent être
identiques.

Merci d'avance

5 réponses

Avatar
Eric
Bonsoir,

Quelque chose comme :
WHERE [Texte base].[Texte de base]=""" & MaFeuille.Cells(I, 1) & """;"

Maintenant tu peux faire aussi:
WHERE [Texte base].[Texte de base])=" & Chr(34)& MaFeuille.Cells(I, 1)
& chr(34) & ";"
Chr(34) est le caractère guillemet.

Bonjour à tous,

Dans une requête SQL, que doit on faire pour passer des caractères comme le
guillemet et l'apostrophe dans un texte.

Ex Dans une clause SQL :
"WHERE ((([Texte base].[Texte de base])='" & MaFeuille.Cells(I, 1) & "' ));"

où le texte de MaFeuille.Cells(I, 1) est égal à -> l'objet "Essai"
C'est à dire un texte comprenant au moins une apostrophe et un guillemet


question également valable pour INSERT INTO. Mais les solutions doivent être
identiques.

Merci d'avance


--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Eric
.../...
Aie, j'avais pas vu apostrophe ET guillemet
Donc pas bon.

Bonsoir,

Quelque chose comme :
WHERE [Texte base].[Texte de base]=""" & MaFeuille.Cells(I, 1) & """;"

Maintenant tu peux faire aussi:
WHERE [Texte base].[Texte de base])=" & Chr(34)& MaFeuille.Cells(I, 1)
& chr(34) & ";"
Chr(34) est le caractère guillemet.

Bonjour à tous,

Dans une requête SQL, que doit on faire pour passer des caractères
comme le guillemet et l'apostrophe dans un texte.

Ex Dans une clause SQL :
"WHERE ((([Texte base].[Texte de base])='" & MaFeuille.Cells(I, 1) &
"' ));"

où le texte de MaFeuille.Cells(I, 1) est égal à -> l'objet
"Essai" C'est à dire un texte comprenant au moins une apostrophe et
un guillemet


question également valable pour INSERT INTO. Mais les solutions
doivent être identiques.

Merci d'avance




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr


Avatar
Eric
re,

En testant quelque chose comme:
where [Texte de base]=" & Chr(34) & Replace(MaFeuille.Cells(I, 1),
Chr(34), Chr(34) + Chr(34)) & Chr(34)

Tu encadres par des " {qui est le chr(34)} ce qui éliminera le problème
de l'apostrophe et tu doubles les guillemets dans la chaine par la
fonction Replace:
Replace(MaFeuille.Cells(I, 1), Chr(34), Chr(34) + Chr(34))

Il y a peut-être plus simple mais j'ai pas ça en tête.

Bonsoir,

Quelque chose comme :
WHERE [Texte base].[Texte de base]=""" & MaFeuille.Cells(I, 1) & """;"

Maintenant tu peux faire aussi:
WHERE [Texte base].[Texte de base])=" & Chr(34)& MaFeuille.Cells(I, 1)
& chr(34) & ";"
Chr(34) est le caractère guillemet.

Bonjour à tous,

Dans une requête SQL, que doit on faire pour passer des caractères
comme le guillemet et l'apostrophe dans un texte.

Ex Dans une clause SQL :
"WHERE ((([Texte base].[Texte de base])='" & MaFeuille.Cells(I, 1) &
"' ));"

où le texte de MaFeuille.Cells(I, 1) est égal à -> l'objet
"Essai" C'est à dire un texte comprenant au moins une apostrophe et
un guillemet


question également valable pour INSERT INTO. Mais les solutions
doivent être identiques.

Merci d'avance




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr


Avatar
Rlapt
Merci de ta réponse.
Je teste demain et je te tiens a courant.
Merci encore


re,

En testant quelque chose comme:
where [Texte de base]=" & Chr(34) & Replace(MaFeuille.Cells(I, 1),
Chr(34), Chr(34) + Chr(34)) & Chr(34)

Tu encadres par des " {qui est le chr(34)} ce qui éliminera le problème
de l'apostrophe et tu doubles les guillemets dans la chaine par la
fonction Replace:
Replace(MaFeuille.Cells(I, 1), Chr(34), Chr(34) + Chr(34))

Il y a peut-être plus simple mais j'ai pas ça en tête.

Bonsoir,

Quelque chose comme :
WHERE [Texte base].[Texte de base]=""" & MaFeuille.Cells(I, 1) & """;"

Maintenant tu peux faire aussi:
WHERE [Texte base].[Texte de base])=" & Chr(34)& MaFeuille.Cells(I, 1)
& chr(34) & ";"
Chr(34) est le caractère guillemet.

Bonjour à tous,

Dans une requête SQL, que doit on faire pour passer des caractères
comme le guillemet et l'apostrophe dans un texte.

Ex Dans une clause SQL :
"WHERE ((([Texte base].[Texte de base])='" & MaFeuille.Cells(I, 1) &
"' ));"

où le texte de MaFeuille.Cells(I, 1) est égal à -> l'objet
"Essai" C'est à dire un texte comprenant au moins une apostrophe et
un guillemet


question également valable pour INSERT INTO. Mais les solutions
doivent être identiques.

Merci d'avance




--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr





Avatar
Rlapt
Bonsoir,

Merci les premiers essais fonctionnent correctement.
Pour ceux qui sont intéressés voici la fonction Replace lorsque l'on
travaille sous Excel avec DAO.

Function Repalce(Texte As String, CaraRempl As Variant, CarRempl As Variant)
As String
Dim Pos As Integer

Pos = InStr(Texte, CaraRempl)
While Pos > 0
Texte = Mid(Texte, 1, Pos - 1) & CarRempl & Mid(Texte, Pos + 1)
Pos = InStr(Pos + Len(CarRempl), Texte, CaraRempl)
Wend
Repalce = Texte
End Function

Merci encore pour l'aide.


RLAPT

Bonjour à tous,

Dans une requête SQL, que doit on faire pour passer des caractères comme le
guillemet et l'apostrophe dans un texte.

Ex Dans une clause SQL :
"WHERE ((([Texte base].[Texte de base])='" & MaFeuille.Cells(I, 1) & "' ));"

où le texte de MaFeuille.Cells(I, 1) est égal à -> l'objet "Essai"
C'est à dire un texte comprenant au moins une apostrophe et un guillemet


question également valable pour INSERT INTO. Mais les solutions doivent être
identiques.

Merci d'avance