Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/07/2011, 09h52   #1
Membre à l'essai
 
Homme
Inscription : juillet 2005
Messages : 68
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : juillet 2005
Messages : 68
Points : 22
Points : 22
Par défaut Echappement de caractères

Bonjour,

Je suis actuellement en train de découvrir le SQL, et je bloque sur une requête :

Code :
"SELECT Stock FROM " & "C:\Temp\fichier.csv" & " WHERE " & "Article=" & "'" & CodeArticle & "'" & " AND Mag.='" & Magasin & "'"
J'ai donc une table qui s'appelle "Mag." . Or, si je retire ce "." du nom de ma table, ma requête fonctionne.

Je pense donc que mon problème vient de ce caractère qui n'est pas autorisé.

Avez-vous une idée pour autoriser ce caractère, sachant que ma requête est lancée depuis Excel (VBA)

Merci
Korleone est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2011, 18h08   #2
Membre éclairé
 
Avatar de juvamine
 
Développeur informatique
Inscription : mai 2004
Messages : 394
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mai 2004
Messages : 394
Points : 377
Points : 377
Essai de le mettre entre crochet

Code :
1
2
 
"SELECT Stock FROM " & "C:\Temp\fichier.csv" & " WHERE " & "Article=" & "'" & CodeArticle & "'" & " AND [Mag.]='" & Magasin & "'"
A+
__________________
http://chat.developpez.com/ -- Salon Base de Données --
juvamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/07/2011, 18h14   #3
Membre émérite
 
Homme Olivier Dehorter
Ingenieur de recherche - Ecologue
Inscription : juin 2003
Messages : 697
Détails du profil
Informations personnelles :
Nom : Homme Olivier Dehorter
Localisation : France

Informations professionnelles :
Activité : Ingenieur de recherche - Ecologue

Informations forums :
Inscription : juin 2003
Messages : 697
Points : 837
Points : 837
Franchement le mieux serait de supprimer tous les caractères non-standards des noms de tables et colonnes
dehorter olivier est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2011, 08h42   #4
Membre éclairé
 
Avatar de juvamine
 
Développeur informatique
Inscription : mai 2004
Messages : 394
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mai 2004
Messages : 394
Points : 377
Points : 377
Sur un fichier csv, on ne choisit pas forcément la source de ce dernier
__________________
http://chat.developpez.com/ -- Salon Base de Données --
juvamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2011, 10h25   #5
Membre éclairé
 
Avatar de boussafi
 
Homme
Ingénieur développement logiciels
Inscription : septembre 2007
Messages : 342
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Algérie

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : septembre 2007
Messages : 342
Points : 397
Points : 397
Envoyer un message via Yahoo à boussafi Envoyer un message via Skype™ à boussafi
Citation:
Envoyé par Korleone Voir le message
Bonjour,

Je suis actuellement en train de découvrir le SQL, et je bloque sur une requête :

Code :
"SELECT Stock FROM " & "C:\Temp\fichier.csv" & " WHERE " & "Article=" & "'" & CodeArticle & "'" & " AND Mag.='" & Magasin & "'"
J'ai donc une table qui s'appelle "Mag." . Or, si je retire ce "." du nom de ma table, ma requête fonctionne.

Je pense donc que mon problème vient de ce caractère qui n'est pas autorisé.

Avez-vous une idée pour autoriser ce caractère, sachant que ma requête est lancée depuis Excel (VBA)

Merci
tu veux dir la colonne.

le point n'est pas autorisé dans l'identification des colonnes.
sauf que ; j'ai essayé ça(mag.) dans Oracle, il accepte dont la requete est comme suite:

Code :
SELECT t."mag." FROM table_x t
boussafi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/07/2011, 20h12   #6
Membre éclairé
 
Avatar de juvamine
 
Développeur informatique
Inscription : mai 2004
Messages : 394
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur informatique

Informations forums :
Inscription : mai 2004
Messages : 394
Points : 377
Points : 377
dans sqlserver / access tu peux le faire si tu encadre de crochet...
__________________
http://chat.developpez.com/ -- Salon Base de Données --
juvamine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/08/2011, 08h45   #7
Membre à l'essai
 
Homme
Inscription : juillet 2005
Messages : 68
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : juillet 2005
Messages : 68
Points : 22
Points : 22
Merci de votre aide.

Les crochets n'ont pas l'air de fonctionne dans VBA. Je reçois un message du type : "The connection cannot be used to perform this operation. It is either closed or invalid in this context."

Effectivement, j'utilise un csv qui est généré automatiquement par Baan, je ne choisi donc pas la source.

boussafi, je veux effectivement dire colonne. Merci de me reprendre. Comme dis, je suis novice en la matière...

Pour solutionner le problème, j'ouvre le CSV avec Excel, je remplace le nom de la colonne et je sauve le fichier à nouveau dans un format csv. C'est pas très propre, mais ça fonctionne.

Par contre, je laisse le sujet ouvert encore quelques jours afin de voir si une réponse peut m'aider.

Merci.
Korleone est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 14h09.


 
 
 
 
Partenaires

Hébergement Web