Partager via


Classements Unicode seulement

La spécification Unicode définit un schéma de codage unique pour la plupart des caractères largement utilisés dans les transactions commerciales à travers le monde. Tous les ordinateurs traduisent de manière fiable les modèles de bits des données Unicode en caractères en utilisant la spécification Unicode unique. Cela assure que le même modèle de bits est toujours converti par le même caractère sur tous les ordinateurs. Les données peuvent être transférées librement d'une base de données ou d'un ordinateur à un autre sans redouter que le système destinataire ne traduise pas correctement les modèles de bits en caractères.

Unicode utilise 2 octets pour coder chaque caractère. Il existe suffisamment de modèles différents (65 536) sur 2 octets pour qu'une spécification unique couvre les langues les plus couramment utilisées dans le domaine commercial. Vous pouvez éviter la majeure partie des problèmes de conversion de caractères en utilisant des types de données Unicode dans l'ensemble de votre système.

Utilisation de COLLATE

Les classements Windows Unicode seulement spécifiés pour les données Unicode seulement, par exemple, nchar, nvarchar et nvarchar(max), n'ont pas de pages de codes associées.

Dans SQL Server, les types de données suivants acceptent les données Unicode :

  • nchar

  • nvarchar

  • ntext

Les classements Unicode seulement peuvent être utilisés avec la clause COLLATE pour appliquer des classements aux types de données nchar, nvarchar et ntext sur des données de niveau colonne et de niveau expression ; toutefois, les classements Unicode seulement ne peuvent pas être utilisés avec la clause COLLATE pour modifier le classement d'une base de données ou d'une instance de serveur.

Les classements Unicode seulement peuvent être utiles lors de la gestion de données entre une installation de serveur et des applications de base de données clientes. Les applications clientes héritées sont souvent installées sur des systèmes d'exploitation plus anciens et peuvent ne pas reconnaître un classement Windows plus récent qui a été appliqué à une base de données ou un serveur SQL Server installés sur un système d'exploitation plus récent. Si un classement Unicode seulement est appliqué à certaines données de niveau colonne ou de niveau expression sur le serveur, le client n'essaie pas de mapper les données entrantes avec une page de codes incorrecte, et l'intégrité des données de type caractère est préservée pour les données importées sur le client.