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

MS SQL Server Discussion :

enregistrement d'espaces a la fin des champs


Sujet :

MS SQL Server

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 7
    Points : 8
    Points
    8
    Par défaut enregistrement d'espaces a la fin des champs
    Bonjour,

    Je suis vraiment embetée. J'utilise SQL SERVER et mon problème est le suivant :
    Quand je fais une requête d'insertion dans ma Base de données, le champ est enregistré avec des espaces à la fin. Par exemple, mon_champ = "gestion"; Je l'insere ds la BD et quand je le récupère et que par exemple je fais

    if($mon_champ == "gestion") echo "coucou";

    eh bien, coucou n'apparait pas parce que ds la BD, mon_champ = mon_champ+plein d'espaces !!!

    Quelqu'un a t il deja rencontré ce problème ??

  2. #2
    Membre averti
    Inscrit en
    Mars 2004
    Messages
    425
    Détails du profil
    Informations forums :
    Inscription : Mars 2004
    Messages : 425
    Points : 358
    Points
    358
    Par défaut
    Utilise un RTRIM pour suuprimer les espaces dans les valeurs de ta colonne
    OS:Win 2000 Pro, WIN XP
    SGBD: MS Sql Server, Oracle
    Environnement: VS.NET 2002, JBuilder
    Web: www.ndestudents.com

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    rtrim ne marche pas,(j'ai essayé), car quand je tape mon champ dans un formulaire, je ne met pas d'espace à la fin, et quand je fais un echo de ma requete pour voir le résultat, il n'y a pas d'espace a la fin des champs. Mais je le vois dans la BD.

  4. #4
    Membre à l'essai
    Inscrit en
    Avril 2005
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 16
    Points : 10
    Points
    10
    Par défaut
    Salut,

    Tu dois regarder le type de donnée $mon_champ dans sql server. A mon avis tu utilises le type de donnée CHAR. Avec ce type j'ai souvent eu le problème qu'il ajoutait des espaces pour arriver à la longueur que tu as donné au champ (exemple: mon_champ char(30) ; mon champ = 'gestion' + 24 espaces).
    Utilise plutot le type de donnée varchar ou nvarchar.
    Maintenant si c'est au niveau des données que tu envois qui contiennent les espaces, lors de ton insertion tu dois faire comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    SET @parametre_mon_champ = SELECT RTRIM(@parametre_mon_champ)
    INSERT INTO ma_table(mon_champ) VALUES(@parametre_mon_champ)
    Un RTRIM lors de l'insertion n'a pas l'air de fonctionner; tu dois réinitialiser la variable avant l'insertion.

    A+

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Février 2005
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Merci beaucoup utilisateur_java pour ta réponse.
    En effet, j'utilise des char. J'essaie tout de suite avec les varchars.
    Encore merci.

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 06/08/2010, 16h52
  2. création de table avec espace pour les noms des champs
    Par comcom94 dans le forum Débuter
    Réponses: 4
    Dernier message: 12/11/2008, 15h51
  3. Supprimer tous les espaces vides à la fin des champs.
    Par godjojo dans le forum Requêtes
    Réponses: 8
    Dernier message: 15/12/2007, 21h04
  4. Réponses: 4
    Dernier message: 28/03/2007, 17h27
  5. Réponses: 17
    Dernier message: 18/03/2005, 09h23

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