Juegos de Caracteres más habituales
Por razones históricas, existen muchisimos Juegos de Caracteres y la BBDD Oracle soporta la inmensa mayoría de ellos.
Vamos a ver los más utilizados y desde una prespectiva histórica.
El Juego de Caracteres ASCII (7 bits)
Teniendo encuenta que la informática nació en EEUU, el primer Juego de Caracteres importante fué el ASCII.
Como características principales:
- Utiliza 7 bits para codificar cada carácter.
- Por tanto, puede codificar hasta 128 carácteres.
- Codifica los caracteres del alfabeto Inglés + los caracteres habituales en el teclado (excepto los acentos y las letras ñ,ç): ()/&%$-{}[]...
Por su parte, IBM desarrolló su Juego de Caracteres EBCDIC (7bits) con unas carcateristicas muy similares al ASCII, pero con una codificación distinta: Como siempre, IBM va por libre...
Quizás alguien recuerde los nombres de los titulares de Cuentas Bancarias que contenian una ñ, que esta ñ se transformaba en una q: esto era debido a la utilización de un Juego de Caracteres de 7 bits que no incluia la letra ñ.
Juegos de Caracteres de 8bits
Primera época: Cada fabricante va por libre
Cuando la informática llegó a Europa, los europeos quisieron representar las grafías de sus idiomas: ñ,ç, letras acentuadas, etc.
En esta época nacieron una multitud de Juegos de Caracteres:
- Los de IBM, derivados de EBCDIC
- El resto, derivados del ASCII
- Los primeros 127 caracteres eran comunes al ASCII y, por tanto, compatibles con él.
- Se añadieron otros 127 carácteres para soportar las lenguas occidentales.
- Un único Juego de Caracteres (256 caracteres) no soportaba totas las lenguas accidentales,
- Como consecuencia, nacieron varios dialectos: cada dialecto cubría una serie de lenguges.
- Además, cada fabricante creaba sus propios Juegos de Caracteres.
Como consecuencia de todo esto, en esta época intermedia, habia una multitud de Juegos de Caracteres.
Quizás destacar los Juegos de Caracteres de la difunta DEC (popularmente: Digital) porque de ellos nacieron los ISO.
Segunda época: Juegos de Caracteres ISO (y Windows)
Finalmente, los distintos fabricantes se pusieron de acuerdo y crearon los comités y estándares ISO de Juego de Caracteres.
De esta époco (que aún perdura), destacamos los Juegos de Caracteres:
- EBCDIC: IBM sigue por libre
- iso-8859-1: El Juego de Caracteres utilizado en Europa Occidental (incluyendo España)
- En la BBDD Oracle se corresponde con el Juego de Caracteres WE8ISO8859P1
- No incluye el caracter €
- iso-8859-15: El último gran invento del comité ISO:
- Es igual al Juego de Caracteres iso-8859-1, pero añade el carácter €.
- Windows 1252: Bien: Windows también ha hecho la guerra por su cuenta y creó su propio Juego de Caracteres para las lenguas de Europa Occidental.
- Este Juego de Caracteres es un superset físico del iso-8859-1: Incluye todos los caracteres del iso-8859-1 con su misma codificación e incluye algunos más.
- En la BBDD Oracle se corresponde con el Juego de Caracteres WE8WIN1252
- Este Juego de Caracteres incluye el carácter €. No obstante, su codificación es distinta al del Juego iso-8850-15
- Los juegos de caracteeres iso-8859-15 y Windows 1252 son incompatibles.
Y la informática llega a Oriente...
Con los Juegos de Caracteres de 8 bits, se va trampeando la informática en Europa (incluyendo Grecia, Rusia, paises con el alfabeto árabe, etc).
No obstante, cuando la informatica llegó a Oriente, se vió que 256 grafias para cada lengua eran del todo insuficientes.
Entonces nacieros los Juegos de Caracteres Universales: la intención es que haya un único Juego de Caracteres para todos los idiomas. (Bueno: de hecho hay 2: el basado en ASCII y el basado en EBDCIC)
Este Juego de Caracteres es el Unicode con sus distintas versiones (e implementaciones) que van añadiendo nuevas grafias, tanto de lenguages como de simbolos especiales (p.e.: matemáticos).
En lo que se refiere a la BBDD Oracle, destacamos las implementaciones (notación de la BBDD Oracle):
- UTF8: Por razones históricas.
- Cada carácter ocupa 1, 2 ó 3 bytes
- No soporta las últimas adiciones de Unicode (sólo hasta Unicode V 3.0).
- Es un superset físico del Jego de Caracteres ASCII 7 bits
- AL32UTF8: Soporta las últimas versiones de Unicode
- Soporta los caracteres suplementarios
- Cada carácter ocupa 1, 2, 3 ó 4 bytes.
- Es un superset físico del Jego de Caracteres ASCII 7 bits
- AL16UTF16: Soporta las últimas versiones de Unicode
- No soporta los caracteres suplementarios
- Cada carácter ocupa 2 bytes
