Compartir a través de


Intercalaciones exclusiva de Unicode

La especificación Unicode define un esquema de codificación único para la mayor parte de los caracteres usados con más frecuencia en todo el mundo. Todos los equipos traducen de forma coherente los patrones de bits de los datos Unicode a caracteres, con la especificación única de Unicode. Esto asegura que el mismo patrón de bits se convierte siempre al mismo carácter en todos los equipos. Los datos se pueden transferir libremente de una base de datos o un equipo a otro, sin preocuparse de que el sistema que los reciba traduzca los patrones de bits de forma incorrecta.

Unicode utiliza 2 bytes para codificar cada carácter. Hay suficientes patrones distintos (65.536) en 2 bytes para establecer una única especificación que abarque la mayor parte de los idiomas comerciales comunes. Puede aminorar los problemas de la conversión de caracteres si utiliza tipos de datos Unicode en el sistema.

Usar COLLATE

Las intercalaciones exclusivas de Unicode de Windows especificadas para datos exclusivos de Unicode, como nchar, nvarchar y nvarchar(max), no tienen páginas de códigos asociadas.

En SQL Server, éstos son los tipos de datos que admiten datos Unicode:

  • nchar

  • nvarchar

  • ntext

Las intercalaciones exclusivas de Unicode se pueden utilizar con la cláusula COLLATE para aplicar intercalaciones a los tipos de datos nchar, nvarchar y ntext en el nivel de columna y en el nivel de datos de expresión; sin embargo, no se pueden utilizar con la cláusula COLLATE para cambiar la intercalación de una instancia de la base de datos o del servidor.

Las intercalaciones exclusivas de Unicode pueden ser útiles al administrar los datos entre una instalación del servidor y las aplicaciones de base de datos cliente. Las aplicaciones cliente heredadas a menudo están instaladas en sistemas operativos anteriores y la aplicación cliente no puede reconocer ninguna intercalación de Windows más reciente que se haya aplicado a un servidor o base de datos de SQL Server instalados en un sistema operativo más reciente. Si una intercalación exclusiva de Unicode se aplica a un nivel de columna concreto o a datos del nivel de expresión en el servidor, el cliente no intentará asignar los datos entrantes a una página de códigos incorrecta y los datos importados en el cliente mantendrán la integridad de los caracteres.