Rechercher : dans
Par :

Requête sql espace nom table

Dernière réponse le 20 avr 2009 à 20:30:03 Giuliano, le 12 jui 2005 à 10:33:18 
 Signaler ce message aux modérateurs

Bonjour à tous,
j'aimerai effectué une requête sur une page d'un site pour afficher des données de ma base. Malheureusement, certaines tables contiennent des espaces et je ne sais pas comment faire pour que la syntaxe soit correcte et que la table soit reconnue... Je sais ce que vous allez dire, ne pas mettre d'espace dans des tables!! Malheureusement ce n'est pas moi qui ai créé cette base de données et vu la grandeur de cette dernière, il me serait impossible de renommer toutes les tables...
Voilà, est-ce que quelqu'un pourrait m'aider?
Ma base de donnée est Access et sur mon site, je programme en php..
Merci d'avance!

Meilleures réponses pour « Requête sql espace nom table » dans :
SQL - Création de table VoirLe SQL, comportant un langage de définition de données (LDD), permet de créer des tables. Pour cela, il utilise le couple de mots clés CREATE TABLE. La création de tables Le création de tables se fait à l'aide du couple de mots-clés CREATE...
SQL - Modification de table VoirModification de table Il est possible de supprimer une table grâce à la clause DROP, il existe aussi des commandes moins extrêmes permettant L'ajout de colonnes La modification de colonnes La suppression de colonnes Enfin, il est possible...
Exécution de requêtes avec JDBC VoirExécution d'une requête SQL Pour exécuter une requête SQL, il s'agit dans un premier temps de créer un objet Statement, pouvant être obtenu à partir de l'objet Connection. Un objet ResultSet permettra de récupérer les données en provenance de...

1

Giuliano, le 12 jui 2005 à 10:53:28
  • +2

Personne n'a une petite idée pour me venir en aide? Je ne sais vraiment plus quoi faire... Merci d'avance!

Répondre à Giuliano

2

AC, le 12 jui 2005 à 11:41:11

Bjr!
Je crois pas qu'il y ai de solution à ton pb, en general php est utilisé pour faire le lien avec une base de type MySQL ou similaire et l'espace est un caractère interdit dedans. Essaye toujours d'encadrer tes noms de tables avec des ` (Alt GR +7) mais n'est pas trop d'espoir. A mon avis il faut que tu renomme tes tables.

Répondre à AC

3

Giuliano, le 12 jui 2005 à 13:38:26

Bjr, tout d'abord merci pour ta réponse même si c'est pas forcément celle que j'attendais... ;o)
Pour renommer les tables, ça va être difficile car il y en a énormément!!! Et peut-être en le faisant avec un autre language? Java, asp?!
Je vais regarder tout ça et si je ne peux pas m'en sortir autrement, je m'attélerai à la tâche de renommer toutes mes tables...
Merci en tout cas!

Répondre à Giuliano

4

gwaa, le 29 jui 2005 à 22:50:55

Il me semble que phpmyadmin(qui est écrit en php) peremet de créer et d'exploiter des tables Mysql avec un un nom contenant un caractère "espace", donc c'est forcément possible...

Répondre à gwaa

5

babbel, le 22 mar 2006 à 14:45:09

Salut,
Bon, ca fait longtemps que tu as posté ton message, mais je suis tombé dessus par harsard car j'ai le meme probleme mais sur SQL Server.

Pour toi et les autes qui pourrait avoir le meme probleme, la requete passe sans probleme si tu encadre le nom de ta table par des [ ].

Ce qui donne dans mon cas
select * from [Mois courant]

@+

Répondre à babbel

10

 noumidya, le 20 avr 2009 à 20:30:03
  • +1

Je vous remercie infiniment pour le truc de [] utiliser dans la procedure WHERE pour les colonnes qui contiennet le nom separé par un espace. tu m'as enmagasiné un grand travail pour tout renommer de debut
autre fois merci mon ami.

Répondre à noumidya

6

Pierre, le 20 jui 2006 à 11:49:29

Sinon, si tu bosse avec PHP et MySQL, en encadrant simplement les noms de tables avec des ` dans la requete suffit pour que ça marche.

A+, Pierre

Répondre à Pierre

7

DragonMiki, le 21 fév 2007 à 09:37:33

Oui il est possible de bosser avec Mysql et des table ou champs avec espace meme si ce n'est pas idéal.
Pour cela faites un petit exemple dans PhpMyadmin avec un insertion ou un select il vous donnera la syntaxe

ex pour une insertion :

INSERT INTO `table avec espace` ( `id` , `largeur` , `hauteur` , `epaisseur` , `nom champs avec espace`)
VALUES ('$id', '$largeur', '$hauteur', '$epaisseur', '$nom_champs')

Car il n'est pas tjrs facile ou meme autoriser de renommr le nom des tables ou des champs et que celui qui a créé la table ou les champs n'a pas forcement fait tout comme il faudrait :)

Répondre à DragonMiki

8

-CCM-, le 8 jui 2008 à 17:09:44

Bonjour, dans la même idée, avec php et mysql.

Je récupère des noms de documents qui me serviront d'url.
Le souci c'est que certains noms de documents contiennent des espaces.

Du coups lorsque je récupere le nom et que je le stock dans ma base j'ai bien :"nom du document.pdf"
Mais lorsque je l'utilise dans un script pour en faire un lien j'ai simplement :"http://localhost/nom"

Il faut obligatoirement renomer le document en :" nom%20du%20document.pdf"
Pour avoir l'url :":"http://localhost/nom%20du%20document.pdf"

Ma variable $nom contient bien " nom du document.pdf "
Mais en écrivant : "http://localhost/`$url`" j'obtient :"http://localhost/%60nom "

Comment obtenir une variable qui servira d'url contenant des espaces?

Merci

Répondre à -CCM-

9

adnanos, le 5 aoû 2008 à 22:36:55
  • +1

C simple, utilise les ` ton champ ` ;)

attention pas les apostrophes ' ' !!!!!

100%

Répondre à adnanos