sql >> Base de Datos >  >> RDS >> Oracle

Diferencia entre BYTE y CHAR en tipos de datos de columna

Supongamos que el conjunto de caracteres de la base de datos es UTF-8, que es la configuración recomendada en las versiones recientes de Oracle. En este caso, algunos caracteres tardan más de 1 byte en almacenarse en la base de datos.

Si define el campo como VARCHAR2(11 BYTE) , Oracle puede usar hasta 11 bytes para el almacenamiento, pero es posible que no pueda almacenar 11 caracteres en el campo, porque algunos de ellos requieren más de un byte para almacenarse, p. caracteres no ingleses.

Al definir el campo como VARCHAR2(11 CHAR) le dice a Oracle que puede usar suficiente espacio para almacenar 11 caracteres, sin importar cuántos bytes se necesiten para almacenar cada uno. Un solo carácter puede requerir hasta 4 bytes.