You are on page 1of 5

TIPOS DE DATOS POSTGRESQL 8.4.

8
Informacin tomada del sitio oficial de PostgreSQL http://www.postgresql.org/docs/8.4/static/index.html, traduccin realizada a espaol por Boris Guevara. Esta informacin es til para iniciar cualquier proceso de migracin de base de datos hacia PostgreSQL. PostgreSQL posee un conjunto de tipos de datos nativos disponibles para los usuarios. Los usuarios pueden agregar nuevos tipos a PostgreSQL usando el comando CREATE TYPE. La siguiente tabla muestra todos los datos incorporados en los tipos de datos de uso general.

Nombre
Bigint bigserial bit [ (n) ] bit varying [ (n) ] boolean Box Bytea character varying [ (n) ] character [ (n) ] Cidr Circle Date Double precision Inet integer interval [ fields ] [ (p) ] line lseg macaddr money numeric [ (p, s) ] path point polygon real smallint serial text time [ (p) ] [ without time zone ] time [ (p) ] with time zone timestamp [ (p) ] [ without time zone ] timestamp [ (p) ] with time

Alias
int8 serial8

Descripcin

Entero con signo ocho bytes Entero auto incremento ocho bytes Cadena bit de longitud fija varbit Cadena bit de longitud variable bool Booleano lgico (trae/false) Caja rectangular en un plano Datos binarios ("arreglo byte ") varchar [ (n) ] Cadena de carcter de longitud variable char [ (n) ] Cadena de carcter de longitud fija Direcciones de red IPv4 o IPv6 Circulo en un plano Fecha calendario (ao, mes, da) Numrico de punto flotante de doble float8 precisin (8 bytes) Direccin de host IPv4 o IPv6 int, int4 Entero con signo de cuatro bytes Intervalo de tiempo Lnea infinita en un plano Segmento de lnea en un plano Direccin MAC (Media Acceso Control) Cantidad de moneda decimal [ (p, Numrico exacto de precisin s) ] seleccionable Proyeccin geomtrica en un plano Punto geomtrico en un plano Proyeccin cerrada en un plano Nmero de precisin simple de punto float4 flotante (4 bytes) int2 Entero con signo de dos bytes Entero de cuatro bytes auto serial4 incremental Cadena de caracteres de longitud variable Hora y da (sin zona horaria) timetz Hora de da, con zona horaria Fecha y hora (sin zona horaria) timestamptz Fecha y hora, incluyendo zona horaria

Nombre
zone tsquery tsvector txid_snapshot uuid xml

Alias

Descripcin
Consulta de bsqueda de texto Documento de bsqueda de texto Instantnea del ID de la Transaccin a nivel de usuario Identificador nico universal Data XML

Tipos Numricos
Nombre Smallint Integer Bigint Decimal Numeric Real Double precision Serial Bigserial Tamao de almacenamiento 2 bytes 4 bytes 8 bytes variable variable 4 bytes 8 bytes 4 bytes 8 bytes Descripcin Entero de pequeo rango Entero (utilizado con regularidad) Entero de amplio rango Rango -32768 a +32767 -2147483648 a +2147483647 -9223372036854775808 a 9223372036854775807

Precisin especificada por Sin limite el usuario, exacta Precisin especificada por Sin limite el usuario, exacta Precisin variable inexacta 6 dgitos decimales de precisin Precisin variable inexacta 15 dgitos decimales de precisin Entero auto incremento Entero grande auto incremento 1 a 2147483647 1 a 9223372036854775807

Tipos de Serial
Los tipos de datos serial y bigserial no son tipos verdaderos, pero son una conveniente notacin para crear columnas con identificadores nicos (similar al auto incremento soportado por otras base de datos). La actual implementacin es la siguiente: CREATE TABLE tablename ( colname SERIAL ); Es equivalente a especificar CREATE SEQUENCE tablename_colname_seq; CREATE TABLE tablename ( colname integer NOT NULL DEFAULT nextval('tablename_colname_seq') ); ALTER SEQUENCE tablename_colname_seq OWNED BY tablename.colname; Por lo tanto, se construy una columna entera adaptada, para que sus valores por defecto sean asignados por un generador de secuencias. Una restriccin Not Null es aplicada para asegurar que este tipo de valor no pueda ser insertado. Para finalizar la secuencia es marcada como propiedad de la columna, por lo tanto est se eliminar si la columna o la tabla son eliminadas.

Tipos Moneda
El tipo moneda almacena la cantidad de moneda con una precisin fraccionaria fija.

Nombre

Tamao Almacenaje

Descripcin Cantidad de moneda

Rango -92233720368547758.08 a +92233720368547758.07

money 8 bytes

Tipos Carcter
Nombre Descripcin Character varying(n), varchar(n) Longitud variable con limite Carcter(n), char(n) Longitud fija, rellenado los espacios en blancos Text Longitud variable ilimitada

Tipos de datos Binarios


Este tipo de dato permite almacenar cadenas binarias. Una cadena binaria es una secuencia de octetos (o bytes). Las cadenas binarias permiten almacenar octetos de valor cero y otros octetos no imprimibles. Tamao de Almacenamiento Descripcin Nombre Bytea 1 o 4 bytes ms la actual cadena binaria Cadena binaria de longitud binaria Cuando ingresas valores bytea, los octetos de determinados valores deben ser escapados (pero todo los valores de los octetos se pueden escapar) cuando se usan como parte de un cadena literal en una sentencia SQL. En general, para escapar un octeto, convertir este, en su valor octal de tres dgitos y debe ser precedido por dos barrar invertidas. Decimal Valor Octeto 0 Representacin de una entrada escapada E'\\000' Representacin de la salida \000 ' \\ \001

Descripcin Cero octeto

Ejemplo

SELECT E'\\000'::bytea; SELECT 39 Comilla Simple '''' o E'\\047' E'\''::bytea; SELECT 92 Barra Invertida E'\\\\' o E'\\134' E'\\\\'::bytea; SELECT 0 a 31 y 127 Octetos no E'\\xxx' (valor octal) E'\\001'::bytea; a 255 imprimibles

Bytea. Salida Octetos escapados Valor Octeto Decimal 92 Descripcin Representacin de Salida Escapada Ejemplo SELECT E'\\134'::bytea; SELECT E'\\001'::bytea; SELECT E'\\176'::bytea; Resultado Salida \\ \001 ~

Barra Invertida \\ \xxx (valor octal) Representacin del conjunto de caracteres del cliente

0 a 31 y 127 a Octetos no 255 imprimibles Octetos 32 a 126 imprimibles

Tipos Fecha/Hora Nombre


timestamp [ (p) ] [ without time zone ] timestamp [ (p) ] with time zone Date

Tamao Almacenaje 8 bytes

Descripcin Valor Bajo


Ambas fecha y hora (sin zona horaria) Ambas fecha y hora con zona horaria. fecha (sin hora) Hora del da (sin fecha) 4713 BC

Valor Alto
294276 AD

Resolucin
1 microsegundos/ 14 dgitos 1 microsegundos / 14 dgitos 1 da 1 microsegundos / 14 dgitos 1 microsegundos / 14 dgitos

8 bytes 4 bytes

4713 BC 4713 BC 00:00:00

294276 AD 5874897 AD 24:00:00

time [ (p) ] [ without time 8 bytes zone ] time [ (p) ] with time zone 12 bytes interval [ fields ] [ (p) 12 bytes ]

Hora del da ,con 24:00:0000:00:00+1459 zona horaria 1459 Intervalo de hora -178000000 aos

178000000 1 microsegundos aos / 14 dgitos

Tipo Booleanos
PostgreSQL provee de un tipo de estndar de SQL denominado boolean que solo puede tener dos estados "true" or "false". Un tercer estado "desconocido", es representado por el valor SQL Null. Los valores validos para el estado "true" son: 'TRUE', 't', 'true', 'y', 'yes', 'on', '1' Los valores validos para el estado "false" son: 'FALSE', 'f', 'false', 'n', 'no', 'off', '0'

Tipos Geomtricos
Los tipos de datos geomtricos representan los objetos espaciales en dos dimensiones.

Nombre
Point Line Lseg Box Path Path

Tamao de almacenamiento 16 bytes 32 bytes 32 bytes 32 bytes 16+16n bytes 16+16n bytes

Representacin El punto en un plano Lnea infinita (No se aplica plenamente) Segmento de lnea finito Caja rectangular trayectoria cerrada (parecido a un polgono) trayectoria abierta Polgono (parecido a la trayectoria cerrada) Circulo (x,y)

Descripcin

((x1,y1),(x2,y2)) ((x1,y1),(x2,y2)) ((x1,y1),(x2,y2)) ((x1,y1),...) [(x1,y1),...] ((x1,y1),...) <(x,y),r> (punto central y el radio)

polygon 40+16n bytes Circle 24 bytes

Tipos para almacenar Direcciones de Redes Nombre Tamao Almacenado Descripcin Cidr 7 or 19 bytes Redes IPv4 and IPv6 Inet 7 or 19 bytes Servidores y redes IPv4 and IPv6 macaddr 6 bytes Direcciones MAC
Cuando ordenas tipos de datos inet o cidr, las direcciones IPv4 son ordenadas antes de las IPv6, incluyendo la direcciones IPv4 encapsuladas o asignadas a la direcciones IPv6.

You might also like