Categorías de datos en sql - oracle sql
Oracle ofrece diversos tipos de datos que determinan la naturaleza de los valores que se pueden manipular. Un tipo de dato numérico, por ejemplo, solo puede manejar números y no letras, cadenas o fechas.
Tipos de datos:
- CHAR [n]: Define una cadena de caracteres de longitud fija, establecida por el valor "n", con un rango de 1 a 2000 caracteres. Si no se especifica, su tamaño será de 1. Si se ingresa un valor mayor al especificado, se producirá un error.
- Longitud fija significa que: Si declaramos un campo como "char[10]" y almacenamos "hola" [4 caracteres], Oracle completará las posiciones restantes con espacios hasta alcanzar los 10 caracteres.
- VARCHAR2 [n]: Almacena cadenas de longitud variable, determinada por el valor "n", con un rango de 1 a 4000 caracteres.
Al ser de longitud variable, si definimos un campo como "VARCHAR2[10]" y almacenamos "hola" [4 caracteres], Oracle solo ocupará 4 bytes en lugar de 10, como ocurre con "CHAR".
Por lo tanto, es más eficiente usar VARCHAR2 para ahorrar espacio en disco cuando la longitud es variable:
- Alfanuméricos: Estos se utilizan para almacenar tanto números como letras.
- NCHAR [x]: Similar a "CHAR", pero permite almacenar caracteres en ASCII, EBCDIC o Unicode. Su rango es de 1 a 1000 caracteres, usando 2 bytes por cada carácter.
- NVARCHAR2 [x]: Similar a "VARCHAR2", pero permite almacenar caracteres en Unicode. Su rango es de 1 a 2000 caracteres, y usa 2 bytes por carácter.
- Numéricos: Usados para manejar números. INTEGER almacena números enteros sin decimales con una escala de 9. NUMBER almacena números enteros o decimales, positivos o negativos, con una precisión de 1 a 38 y una escala de -8 a 127.
- FLOAT: Almacena números en coma flotante con mayor precisión.
- RAW binario: Datos de longitud variable, permite hasta 32767 bytes. A diferencia de CHAR o VARCHAR2, Oracle no convierte conjuntos de caracteres entre servidor y cliente.
- Fechas: Usados para manejar fechas. DATE almacena el siglo, año, mes, día, hora, minuto y segundo, con un tamaño máximo de 7 bytes. TIMESTAMP almacena lo mismo que DATE, pero también los milisegundos, con un tamaño de 11 bytes.
- Objetos largos: Se emplean para almacenar grandes cantidades de datos. BLOB almacena archivos de imagen o video de hasta 4GB. CLOB almacena texto extenso, y NCLOB almacena CLOB en formato Unicode.
- ROWID: Usado para localizar un registro en una tabla, con un valor codificado en base 64.