Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Données en japonais/chinois dans la table SQL Server

Le classement n'affecte que l'ordre de tri, pas l'encodage. Vous devez déterminer quel est l'encodage de votre contenu chinois et japonais (voir ceci ). Si ce n'est pas UCS-2, vous avez un problème (puisque vous ne pouvez pas prendre en charge plusieurs encodages de page simultanément). S'il s'agit d'UCS-2, vous devez vous assurer que l'encodage de votre page ASP est également défini sur UTF-8 (et que le navigateur le reconnaît en définissant correctement l'encodage sur UTF-8 - voir Affichage/Encodage).

Ou en termes plus simples :si l'application qui a créé le contenu n'a pas utilisé de caractères Unicode, vous devrez changer d'encodage de page si vous basculez entre les caractères chinois, japonais et européens.

Si vous avez correctement encodé le contenu Unicode dans votre base de données et que vous utilisez l'encodage UTF-8 sur vos pages, vous ne devriez pas avoir de problème avec l'affichage des caractères spéciaux (tant que vous utilisez une police Unicode sur la page) :

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

Je me rends compte que malgré plusieurs modifications, je ne suis pas très clair, alors laissez-moi ajouter quelques bases.

Un jeu de caractères est une représentation normalisée d'un jeu de caractères (par exemple ASCII, UNICODE, ...).

Le codage des caractères est la représentation binaire utilisée pour stocker les caractères d'un jeu de caractères donné. ASCII a son propre encodage. Unicode, qui est un très grand jeu de caractères conçu pour prendre en charge tous les caractères existants, possède plusieurs encodages (UTF-8, UTF-16, UCS-2, ...).

Seul Unicode vous permet de prendre en charge simultanément le contenu occidental et extrême-oriental avec les mêmes paramètres de base de données et d'application. Il existe cependant des jeux de caractères plus anciens pour le chinois et le japonais qui ne sont pas Unicode. Si votre contenu n'est pas Unicode (BIG 5, par exemple), vous ne pouvez pas l'afficher sur une page Web encodée en UTF-8.

Cela peut devenir délicat si l'application qui a créé le contenu a utilisé un encodage (par exemple BIG-5) et que la base de données l'a stocké sous forme de données Unicode. Si cela se produit, des informations pourraient avoir été perdues.

Vous devez même installer les modules linguistiques correspondants dans Windows afin de voir correctement les caractères. Malheureusement, les problèmes d'encodage ne sont pas simples à diagnostiquer.