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

Accès aux données Discussion :

EDMX - Ajout automatique d'espaces en fin de char(N)


Sujet :

Accès aux données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Par défaut EDMX - Ajout automatique d'espaces en fin de char(N)
    Bonjour,
    J'ai modélisé une base de données SQL Server Express 2008 avec l'Entity Framework (fichiers EDMX).
    Lorsque je met à jour un champ de type "char(N)" l'EDMX ajoute automatiquement des espaces à la fin de la valeur que j'ai saisie.

    Comment faire pour qu'il ne les ajoute pas ?

  2. #2
    Membre Expert
    Avatar de laedit
    Homme Profil pro
    Consultant études et développement
    Inscrit en
    Décembre 2006
    Messages
    1 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant études et développement
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 344
    Par défaut
    Utiliser un type varchar(N).
    Blog - Articles - Framework

    MSDN vous aide, si si, alors n'hésitez pas à y faire un tour avant de poser une question.
    Ah, et n'oubliez pas, Google peut répondre à la majorité de vos questions.

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Par défaut
    Est-ce vraiment la seule solution,
    dans mon cas je sais que les valeurs vont toujours faire entre 2 ou 3caractères.. .il me parait plus judicieux d'utiliser un char(3) qu'un varchar(3).
    Je sais très bien que je me prend la tête pour rien.... mais bon, j'aime bien ça ;-)
    Mais c'est surtout que ça m'embete de modifier mon modèle de données exprès pour l'utilisation de l'EDMX !!! Car la logique veut que mon champ soit en char(3) car c'est plus optimisé dans ce cas là.

  4. #4
    Membre Expert
    Avatar de laedit
    Homme Profil pro
    Consultant études et développement
    Inscrit en
    Décembre 2006
    Messages
    1 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant études et développement
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 344
    Par défaut
    Niveau optimisation, je ne pense pas qu'un char(3) apporte vraiment beaucoup par rapport à un varchar(3).

    Mais sinon, bah je ne pense pas que tu puisse modifier directement les valeurs insérées dans la base de données.

    Il faudrait alors soit faire un trigger sur la (ou les ) table en question pour enlever les espaces des valeurs ajoutées, ou traiter uniquement lors de la récupération des données dans une application.
    Blog - Articles - Framework

    MSDN vous aide, si si, alors n'hésitez pas à y faire un tour avant de poser une question.
    Ah, et n'oubliez pas, Google peut répondre à la majorité de vos questions.

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2006
    Messages
    93
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 93
    Par défaut
    Ok,
    je trouve quand même ça hallucinant que l'EDMX rajoute des accents là où il n'y en a pas besoin...
    Merci tout de même.

  6. #6
    Membre Expert
    Avatar de laedit
    Homme Profil pro
    Consultant études et développement
    Inscrit en
    Décembre 2006
    Messages
    1 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consultant études et développement
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 344
    Par défaut
    Je suppose que c'est afin de respecter le type choisi.

    Si tu prends un char(3), normalement toutes tes valeurs doivent être composées de 3 caractères.

    Tandis que si tu prends un varchar(3), toutes tes valeurs seront composées de 1 à 3 caractères.

    Au final, je trouve ça logique qu'il rajoute des espaces pour combler le manque de caractères.
    Blog - Articles - Framework

    MSDN vous aide, si si, alors n'hésitez pas à y faire un tour avant de poser une question.
    Ah, et n'oubliez pas, Google peut répondre à la majorité de vos questions.

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 20/06/2014, 11h15
  2. Ajouter des espaces en fin de ligne.
    Par pressdell dans le forum Shell et commandes GNU
    Réponses: 2
    Dernier message: 11/10/2012, 12h57
  3. Ajouter des espaces à la fin d'une chaine de caracteres
    Par kodo dans le forum Général Java
    Réponses: 1
    Dernier message: 22/04/2011, 11h25
  4. Ajout automatique d'espace dans une variable numérique
    Par enclave_51 dans le forum Langage
    Réponses: 2
    Dernier message: 08/08/2008, 18h49
  5. [SQL-Serv05] Ajout d'espaces en fin de champs
    Par VincenzoR dans le forum MS SQL Server
    Réponses: 10
    Dernier message: 16/02/2006, 15h12

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