martes, 9 de agosto de 2011

Tipos de datos en PL/SQL

NUMBER (Numérico): Almacena números enteros o de punto flotante, virtualmente de cualquier longitud, aunque puede ser especificada la precisión (Número de digitos) y la escala que es la que determina el número de decimales.


CHAR (Caracter): Almacena datos de tipo caracter con una longitud maxima de 32767 y cuyo valor de longitud por default es 1.


VARCHAR2 (Caracter de longitud variable): Almacena datos de tipo caracter empleando sólo la cantidad necesaria aún cuando la longitud máxima sea mayor.


Aqui se muestra mas tipos de datos:

Tipo de dato / Sintáxis Oracle 8i Oracle 9i Descripción
dec(p, e) La precisión máxima es de 38 dígitos. La precisión máxima es de 38 dígitos. Donde p es la precisión y e la escala.
Por ejemplo: dec(3,1) es un número que tiene 2 dígitos antes del decimal y un dígito después del decimal.
decimal(p, e) La precisión máxima es de 38 dígitos. La precisión máxima es de 38 dígitos. Donde p es la precisión y e la escala.
Por ejemplo: decimal(3,1) es un número que tiene 2 dígitos antes del decimal y un dígito después del decimal.
double precision
float
int
integer
numeric(p, e) La precisión máxima es de 38 dígitos. La precisión máxima es de 38 dígitos. Donde p es la precisión y e la escala.
Por ejemplo: numeric(7,2) es un número que tiene 5 dígitos antes del decimal y 2 dígitos después del decimal.
number(p, e) La precisión máxima es de 38 dígitos. La precisión máxima es de 38 dígitos. Donde p es la precisión y e la escala.
Por ejemplo: number(7,2) es un número que tiene 5 dígitos antes del decimal y 2 dígitos después del decimal.
real
smallint
char (tamaño) Hasta 32767 bytes en PLSQL.
Hasta 2000 bytes en Oracle 8i.
Hasta 32767 bytes en PLSQL.
Hasta 2000 bytes en Oracle 9i.
Donde tamaño es el número de caracteres a almacenar. Son cadenas de ancho fijo. Se rellena con espacios.
varchar2 (tamaño) Hasta 32767 bytes en PLSQL.
Hasta 4000 bytes en Oracle 8i.
Hasta 32767 bytes en PLSQL.
Hasta 4000 bytes en Oracle 9i.
Donde tamaño es el número de caracteres a almacenar. Son cadenas de ancho variable.
long Hasta 2 gigabytes. Hasta 2 gigabytes. Son cadenas de ancho variable.
raw Hasta 32767 bytes en PLSQL.
Hasta 2000 bytes en Oracle 8i.
Hasta 32767 bytes en PLSQL.
Hasta 2000 bytes en Oracle 9i.
Son cadenas binarias de ancho variable.
long raw Hasta 2 gigabytes. Hasta 2 gigabytes. Son cadenas binarias de ancho variable.
date Una fecha entre el 1 de Enero de 4712 A.C. y el 31 de Diciembre de 9999 D.C. Una fecha entre el 1 de Enero de 4712 A.C. y el 31 de Diciembre de 9999 D.C.
timestamp (fractional seconds precision) No soportado por Oracle 8i. fractional seconds precision debe ser un número entre 0 y 9. (El valor por defecto es 6) Incluye año, mes día, hora, minutos y segundos.
Por ejemplo: timestamp(6)
timestamp (fractional seconds precision) with time zone No soportado por Oracle 8i. fractional seconds precision debe ser un número entre 0 y 9. (El valor por defecto es 6) Incluye año, mes día, hora, minutos y segundos; con un valor de desplazamiento de zona horaria.

Por ejemplo: timestamp(5) with time zone
timestamp (fractional seconds precision) with local time zone No soportado por Oracle 8i. fractional seconds precision debe ser un número entre 0 y 9. (El valor por defecto es 6) Incluye año, mes día, hora, minutos y segundos; con una zona horaria expresada como la zona horaria actual.
Por ejemplo: timestamp(4) with local time zone
interval year (year precision) to month No soportado por Oracle 8i. year precision debe ser un número entre 0 y 9. (El valor por defecto es 2) Período de tiempo almacenado en años y meses.
Por ejemplo: interval year(4) to month
interval day (day precision) to second (fractional seconds precision) No soportado por Oracle 8i. day precision debe ser un número entre 0 y 9. (El valor por defecto es 2)
fractional seconds precision debe ser un número entre 0 y 9. (El valor por defecto es 6)
Incluye año, mes día, hora, minutos y segundos.
Por ejemplo: interval day(2) to second(6)
rowid El formato del campo rowid es:
BBBBBBB.RRRR.FFFFF donde BBBBBBB es el bloque en el fichero de la base de datos; RRRR es la fila del bloque; FFFFF es el fichero de la base de datos.
El formato del campo rowid es:
BBBBBBB.RRRR.FFFFF donde BBBBBBB es el bloque en el fichero de la base de datos; RRRR es la fila del bloque; FFFFF es el fichero de la base de datos.
Datos binarios de ancho fijo. Cada registro de la base de datos tiene una dirección física o rowid.
urowid [tamaño] Hasta 2000 bytes. Hasta 2000 bytes. Rowid universal. Donde tamaño es opcional.
boolean Válido en PLSQL, este tipo de datos no existe en Oracle 8i. Válido en PLSQL, este tipo de datos no existe en Oracle 9i.
nchar (tamaño) Hasta 32767 bytes en PLSQL. Hasta 2000 bytes en Oracle 8i. Hasta 32767 bytes en PLSQL. Hasta 2000 bytes en Oracle 9i. Donde tamaño es el número de caracteres a almacenar. Cadena NLS de ancho fijo.
nvarchar2 (tamaño) Hasta 32767 bytes en PLSQL. Hasta 4000 bytes en Oracle 8i. Hasta 32767 bytes en PLSQL. Hasta 4000 bytes en Oracle 9i. Donde tamaño es el número de caracteres a almacenar. Cadena NLS de ancho variable.
bfile Hasta 4 gigabytes. Hasta 4 gigabytes. Localizadores de archivo apuntan a un objeto binario de sólo lectura fuera de la base de datos.
blob Hasta 4 gigabytes. Hasta 4 gigabytes. Localizadores LOB apuntan a un gran objeto binario dentro de la base de datos.
clob Hasta 4 gigabytes. Hasta 4 gigabytes. Localizadores LOB apuntan a un gran objeto de caracteres dentro de la base de datos.
nclob Hasta 4 gigabytes. Hasta 4 gigabytes. Localizadores LOB apuntan a un gran objeto NLS de caracteres dentro de la base de datos.

0 comentarios:

Publicar un comentario