IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 MySQL Discussion :

création de table avec espace pour les noms des champs


Sujet :

MySQL

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 43
    Points : 20
    Points
    20
    Par défaut création de table avec espace pour les noms des champs
    Bonjour j'ai un script qui créer des tables et losrque le nom d'un champ contient un espace ça donne une erreur
    Comment parametrer la base de donnée pour qu'il prenne en compte les espace au niveau des champs ?

    J'utilise phpMyAdmin

    Merci

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Citation Envoyé par MySQL 5.0 Reference Manual
    Si un identifiant est un mot réservé, ou qu'il contient des caractères spéciaux, vous devez le mettre entre guillemets lorsque vous l'utilisez. Les caractères spéciaux sont hors de la plage des caractères alpha-numérique et ‘_’ et ‘$’.
    En d'autres termes, tu dois encadrer tout appel à ton champs par des back-quotes `.
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    select `nom avec espaces` from ma_table
    Mais l'idéal serait de t'en tenir aux alpha-numériques et au caractère _ ...
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  3. #3
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 43
    Points : 20
    Points
    20
    Par défaut
    ok merci sa fonctionne pour les espace mais pas pour le caractère spécial "°" comme dans "N° du ticket"

    Que faut-il faire en général pour que le nom n'importe quel caractère puisse etre pris en compte (car comme tu le dit l'idéal serait de m'en tenir aux alpha-numériques et au caractère _ ... mais c'est l'utilisateur qui saisir les noms de champs via un formulaire )

    j'ai tester
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    addslashes($nomDuChamp)
    avant de l'inserer dans ma requettes mais sa donne rien

  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2008
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 43
    Points : 20
    Points
    20
    Par défaut
    oups
    le dernier message est oublier sa fonctionne parfaitement
    seulement le pb avec les back-quotes est que losque qu'il nya qu'un seul mote dans le nom du champs j'ai l'erreur sql
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Incorrect column name 'NomChamp'

  5. #5
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Saluton,
    Si ce sont bien des back-quotes `NomChamp` (ALT GR 7) et non des quotes 'NomChamp', tu ne devrais pas avoir de message d'erreur.
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Problème avec les majuscules pour les noms de champ
    Par roboq dans le forum Access
    Réponses: 1
    Dernier message: 16/07/2012, 15h08
  2. récupérer les noms des champs d'une table access
    Par fabrice33 dans le forum Accès aux données
    Réponses: 2
    Dernier message: 06/04/2007, 19h38
  3. [MySQL] remplir un tableau avec les noms des champs d'une table
    Par solidaritok dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 05/04/2007, 13h47
  4. [DB2]Obtenir tous les noms des champs d'une table
    Par ptr83 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/11/2006, 09h31
  5. Réponses: 2
    Dernier message: 01/08/2006, 13h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo