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 :

Base de données internationale


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Par défaut Base de données internationale
    Bonjour,

    je dois adapter un produit se basant sur une BD SQL-Server pour qu'il soit utilisable dans tous les pays.
    Le problème se situe au niveau de la gestion des chaines de caractères notament pour les clients asiatiques (idéogrammes ...) où certains caractères peuvent être mal interprétés.

    Existe-t-il une solution permettant de mettre en place une collation prennant tous les caractères en compte (Unicode, ...)?

    Sinon de tout stocker de façon cohérente et de restituer ensuite dans la page code adéquate ...?

    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 228
    Billets dans le blog
    25
    Par défaut
    oui, effectivement, l'unicode. Lors de l'installation de votre MS-SQL, choisissez l'option personnalisée... et vous pourrez alors choisir (entre autre) le characterset et l'ordre de tri autre que par défaut.
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Par défaut
    oui, j'ai testé plusieurs configurations à ce niveau ...
    le problème est qu'apparemment il n'existe pas pour sql server de jeu de caractères unicode à proprement dit .... permettant de prendre en compte l'ensemble des caractères existant. Le choix est restreint à des jeux du type Latin, Japanese, Cyrillique ...

    Y a-t-il un jeu de caractères qui me permettrait de retrouver l'ensemble des caractères de ces codes pages (Latin, Japanese, Cyrillique) voire encore plus large ... ?

    merci

  4. #4
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 228
    Billets dans le blog
    25
    Par défaut
    Il n'y a pas de characterset UNICODE sous MS-SQL. Il faut passer par les champs de type n... (nvarchar, nchar, ...)
    Sr DBA Oracle / MS-SQL / MySQL / Postgresql / SAP-Sybase / Informix / DB2

    N'oublie pas de consulter mes articles, mon blog, les cours et les FAQ SGBD

    Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Par défaut
    ouai ... on est toujours d'accord ...
    ce type de données (comme nvarchar) nous permet de stocker des caractères codés sur plusieurs octets ...

    mais le character set du serveur (définit à l'install) nous limite quant à la palette de caractères utilisables (qu'ils soient sous 1 ou plusieurs octets) ...

    ex: si l'on prend le jeu de caractère japanese_unicode ...et bien les caractères cyrilliques ne seront pas correctement interprétés même si on stocke dans du nvarchar puisqu'ils ne sont pas présent dans le jeu japanese_unicode.

    non ? ou je suis complètement à côté de la plaque ... est-ce que j'ai zapper un concept ... ?

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    77
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 77
    Par défaut
    voilà, après quelques jours de recherche intense ....

    j'ai trouvé finalement le moyen de passer outre le jeu de caractères imposé par le serveur (jeu de caractères définis dés l'install) ... en fait il s'agit d'une simple notation au niveau des requêtes SQL .... il faut préfixer les chaînes de caractères par N ... et bien entendu avoir des types nchar, nvarchar ... pour pouvoir stocker correctement.

    ex : au lieu d'écrire
    INSERT INTO TCollations VALUES ('既存の日');
    il faut juste écrire
    INSERT INTO TCollations VALUES (N'既存の日');

    oui oui c'est tout .... ça m'aura fait galérer ...
    j'espère que ça vous servira ...

    merci encore pour votre aide

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 30/04/2007, 16h24
  2. connexion base de donné
    Par saidi dans le forum MFC
    Réponses: 3
    Dernier message: 07/08/2002, 22h22
  3. [Concept] Stabilité d'une base de donnée
    Par lassmust dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 03/07/2002, 16h16
  4. Bases de données
    Par dev dans le forum C++Builder
    Réponses: 4
    Dernier message: 01/07/2002, 22h55
  5. associer une base de données(access) a un dbgrid
    Par ange1708 dans le forum MFC
    Réponses: 3
    Dernier message: 11/06/2002, 12h18

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