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 :

Caractères bizarres dans un nvarchar


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut Caractères bizarres dans un nvarchar
    Bonjour

    Dans une base de donnée un table a été importée mais un champ nom, defini comme nvarchar contient des accentué mal convertis

    Exemple :
    Elzeelsesteenweg;Chaussée d'Ellezelles;N57
    Il s'agit évidement de 'é' et non de 'é'=,µ

    Quelqu'un a-t-il déja été confronté a cette experience et connaitrait un methode ou table de conversion pour reparer la chose de maniere généralisée ?

    Merci de votre aide

  2. #2
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Bonjour

    La seule solution que j'ai trouvé jusqu'ici, c'est d'appliquer une série de replace pour les diférents UTF8 rencontrés

    REPLACE(streetname,'é','é')
    etc..

    Mais c'est un peu bricolo

    Pas d'autres suggestions ?
    Merci de votre aide

  3. #3
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    C'est dans l'import que la faute a été commise. Quel est l'encodage du fichier d'origine ?
    Pour l'importation par BULK INSERT ou BCP, vous avez la possibilité d'indiquer :
    • CODEPAGE = { 'ACP' | 'OEM' | 'RAW' | '<page_de_code>' } , encodage des caractères
    C'est cela qu'il faut bien choisir en en correspondance avec le type de données du fichier :
    • DATAFILETYPE = { 'char' | 'native' | 'widechar' | 'widenative' }, typage des données

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  4. #4
    Membre expérimenté
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Par défaut
    Merci SQLPro

    Oui je suis conscient que c'est malheureusement un problème lors de l'import
    Mais il est pratiquement impossible de revenir en arrière

    Donc je voulais savoir si quelqu'un avait dans ses tiroirs une recette de correction

    Sinon ma recette serait d'identifier à la main chacune des représentations erronées et de créer une requete avec serie de replace du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    UPDATE MATABLE
    SET streetname=REPLACE(REPLACE(streetname,'é','é'),'à ','à') --etc..
    Mais le plus fastidieux c'est justement de constituer cette table de conversion

Discussions similaires

  1. Caractère bizarre dans liste liée
    Par afrodje dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 02/05/2009, 22h36
  2. Caractères bizarres dans requête SQL
    Par onizuka-21 dans le forum Ruby on Rails
    Réponses: 1
    Dernier message: 31/03/2009, 18h34
  3. [MySQL] caractère bizarre dans la base
    Par stomerfull dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 19/11/2008, 12h03
  4. Caractères bizarre dans un texte dynamique
    Par jnagone dans le forum ActionScript 1 & ActionScript 2
    Réponses: 5
    Dernier message: 07/01/2008, 22h07
  5. [Konqueror] Caractères bizarres dans une page Web
    Par Poseidon62 dans le forum KDE
    Réponses: 3
    Dernier message: 02/05/2007, 19h20

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