Un conjunto de caracteres es un subconjunto de todos los glifos escritos. Una codificación de caracteres especifica cómo esos caracteres se asignan a valores numéricos. Algunas codificaciones de caracteres, como UTF-8 y UTF-16, pueden codificar cualquier carácter en el conjunto de caracteres universales. Otros, como US-ASCII o ISO-8859-1 solo pueden codificar un pequeño subconjunto, ya que usan 7 y 8 bits por carácter, respectivamente. Debido a que muchos estándares especifican tanto un conjunto de caracteres como una codificación de caracteres, el término "conjunto de caracteres" a menudo se sustituye libremente por "codificación de caracteres".
Una intercalación comprende reglas que especifican cómo se pueden comparar los caracteres para ordenar. Las reglas de intercalación pueden ser específicas de la configuración regional: el orden correcto de dos caracteres varía de un idioma a otro.
La elección de un conjunto de caracteres y la intercalación se reduce a si su aplicación está internacionalizada o no. Si no es así, ¿a qué entorno regional se dirige?
Para elegir qué conjunto de caracteres desea apoyar, debe considerar su aplicación. Si está almacenando entradas proporcionadas por el usuario, puede ser difícil prever todas las configuraciones regionales en las que eventualmente se utilizará su software. Para admitirlos a todos, podría ser mejor apoyar el UCS (Unicode) desde el principio. Sin embargo, hay un costo para esto; muchos caracteres europeos occidentales ahora requerirán dos bytes de almacenamiento por carácter en lugar de uno.
Elegir la intercalación correcta puede ayudar al rendimiento si su base de datos usa la intercalación para crear un índice, y luego usa ese índice para proporcionar resultados ordenados. Sin embargo, dado que las reglas de intercalación suelen ser específicas de la configuración regional, ese índice no tendrá valor si necesita ordenar los resultados de acuerdo con las reglas de otra configuración regional.
Es importante tener en cuenta que podría haber muchas colaciones diferentes para un solo juego de caracteres. El que está "bien" depende de la semántica del texto que normalmente está determinado por el idioma en el que está escrito. – Phil