Requête SQL et caractère spéciaux [Résolu]

SoundBoy771 10 Messages postés samedi 27 novembre 2004Date d'inscription 13 mai 2009 Dernière intervention - 17 juil. 2008 à 12:21 - Dernière réponse :  Utilisateur anonyme
- 3 juil. 2012 à 18:52
Bonjour à tous,

Voici mon problème :

Dans du code vb6, je génère un requête SQL qui INSERT des données d'une base dans une autre, identique entre elle.
Mon problème est que je m'aperçois qu'une des tables à un champ qui porte ce nom :"Matin/Midi_affectation" et bien évidement, la présence du / fais planter mon code à l'exécution de la requête.

J'ai chercher comment échapper un caractère spécial dans une requête SQL mais je n'ai trouvé que des méthodes pour échapper des caractères dans un chaine de caractère, ce qui n'est pas mon cas ici.

Merci d'avance pour le temps que vous voudrez bien passer à ma question.

++
Afficher la suite 

13 réponses

Répondre au sujet
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 17 juil. 2008 à 14:13
+3
Utile
encadre le nom de tes champs et tables avec des [ ] ou des ` `

SELECT [Matin/Midi_affectation] FROM MaTable WHERE [Date] = #07/17/2008#
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Renfield
bouv 1424 Messages postés mercredi 6 août 2003Date d'inscription 29 juin 2011 Dernière intervention - 17 juil. 2008 à 13:41
0
Utile
Salut,


Avec ce genre de problème il suffit bien souvent de doubler le caractere qui pose problème.

Essai comme ça : Matin//Midi_affectation


Bonne prog
++
Commenter la réponse de bouv
SoundBoy771 10 Messages postés samedi 27 novembre 2004Date d'inscription 13 mai 2009 Dernière intervention - 17 juil. 2008 à 14:35
0
Utile
Merci à vous pour vos réponses.

bouv : Ta méthode ne fonctionne pas. Peut être s'applique t elle à d'autre cas de figure.

Renfield : Merci à toi ! Ta méthode fonctionne parfaitement. Les crochets isolent le nom de champ ce qui permet d'y inscrire tous les caractère qu'on veux ^^.

Merci à vous !
Commenter la réponse de SoundBoy771
Lamarmottedu73 19 Messages postés jeudi 26 mai 2005Date d'inscription 14 mai 2009 Dernière intervention - 14 mai 2009 à 15:13
0
Utile
Bonjour, j'ai un problème similaire avec un champ qui contien un + ...

Exemple Select toto+tata2 From Ma_Table

j'ai essayé avec les [toto+tata2] ça marche pas j'ai une erreur ORA-00936: Expression absente ...

Help

Merci @+
Commenter la réponse de Lamarmottedu73
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 14 mai 2009 à 15:17
0
Utile
même chose en utilisant des ` ` (Alt Gr + 7) ?
Commenter la réponse de Renfield
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 14 mai 2009 à 15:18
0
Utile
...
souhaites tu récupérer un champ nommé "toto+tata2" ?
ou
récuperer la somme de "toto" + "tata2"

?
Commenter la réponse de Renfield
Lamarmottedu73 19 Messages postés jeudi 26 mai 2005Date d'inscription 14 mai 2009 Dernière intervention - 14 mai 2009 à 15:35
0
Utile
Je viens d'essayer avec ` ` Autre problème

ma requète final resemble à ça

Insert into Table1 (Select 1, `toto+tata2` From Ma_Table)

La nouvelle erreur est ORA-00911: Caractère non valide. Erreur à la ligne de commande : 1, colonne : 29 (juste après Select 1, !

Et je veux récuppérer le champ toto+tata2 qui s'écrit hélas avec un +.

Merci pour l'aide
Commenter la réponse de Lamarmottedu73
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 14 mai 2009 à 15:37
0
Utile
qu'est censé faire ce

SELECT 1, champ FROM table

?

le 1,

me laisse perplexe
Commenter la réponse de Renfield
Lamarmottedu73 19 Messages postés jeudi 26 mai 2005Date d'inscription 14 mai 2009 Dernière intervention - 14 mai 2009 à 15:39
0
Utile
le 1 est pour mettre une valeur par défaut
Commenter la réponse de Lamarmottedu73
Lamarmottedu73 19 Messages postés jeudi 26 mai 2005Date d'inscription 14 mai 2009 Dernière intervention - 14 mai 2009 à 15:46
0
Utile
Je précise que je me trouve dans du PL SQL sous oracle 9i.
Commenter la réponse de Lamarmottedu73
Lamarmottedu73 19 Messages postés jeudi 26 mai 2005Date d'inscription 14 mai 2009 Dernière intervention - 14 mai 2009 à 17:29
0
Utile
DSL et Boulette, j'ai fais Select 1, "toto+tata2" From Table et ça passe

Merci quand même pour l'aide
et dsl pour la boulette
Commenter la réponse de Lamarmottedu73
faouzidu59 3 Messages postés lundi 31 mai 2010Date d'inscription 3 juillet 2012 Dernière intervention - 3 juil. 2012 à 17:12
0
Utile
j'ai le même problème avec l'anti slash dans une requete
Commenter la réponse de faouzidu59
Utilisateur anonyme - 3 juil. 2012 à 18:52
0
Utile
Pas besoin de dire bonjour,

Si tu avais juste pris le temps de lire la réponse de Renfield, tu n'aurais même pas eu besoin de poser la question.
Commenter la réponse de Utilisateur anonyme

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.