Tiempo de lectura:3 Minutos, 37 Segundos

En el siguiente articulo vamos detallar todos los tipos de datos que tiene disponible PostgreSQL. En la mayoría de casos son idénticos a cualquier otra base de datos relacional cómo SQL Server o Oracle, pero otros son muy particulares. Aprenderte los tipos de datos disponibles te ayudará a crear las tablas correctamente y a crear sentencias más optimas.



Tipo de datos

Tipos Lógicos

Disponemos del tipo lógico llamado boolean o también conocido como bool. En el solo se puede almacenar los valores true o false.

Tipos Numéricos

Disponemos de varios tipos de datos numéricos, por ejemplo en lo que respecta a números enteros tenemos smallint, int y bigint.

Si queremos almacenar números con decimales tendremos que crear campos de tipo real o double precisión. Estos tipos de datos se consideran de punto flotante y tienen la peculiaridad que pierden exactitud según van creciendo o decreciendo los valores, algo sin importancia en la mayoría de casos.

Para evitar esta perdida, también puedes utilizar el tipo de dato numeric, pero debes tener en cuenta que este tipo ocupa más espacio y las operaciones se ejecutan más lentas sobre ellos. En este tipo de dato le puedes asignar una precisión y una escala, pero si lo obvias podrás almacenar cualquier número. Recuerda que si creas un numeric(5,3) le estas indicando que el número va tener en total 5 numeros siendo 3 de ellos decimales. No pensar cómo es habitual que tendrá 5 enteros y 3 decimales.

Tipo de DatoTamañoNombre alternativo
smallint2 bytesint2
int4 bytesint4, integer
bigint8 bytesint8
numeric (p, e)11 + (p/2)
real4 bytesfloat, float4
double precision8 bytesfloat8

Tipo Auto numérico

Este tipo especial de PostgreSQL es bastante útil para crear valores incrementales. Al definir este tipo de datos conseguirás que su valor se vaya incrementando según se van insertando registros sin necesidad de indicarle nada. Cuando se inserten valores en esta tabla no debemos indicarle el valor de identificador ya que obtendrá el máxima valor del campo y le sumara uno.

Este tipo de datos lleva implícita la creación de una secuencia que será la encargada de conseguir este funcionamiento.

Tipo de caracteres

Tenemos disponibles tres tipos de datos de cadena; char(n), varchar(n) y text.

  • Char(n): reserva n espacios para almacenar la cadena independientemente del valor que insertes.
  • Varchar(n): solo utiliza los espacios necesarios para guardar el texto indicado, siempre que sea igual o menor a n.
  • Text: almacena texto de cualquier longitud.

Como insertar caracteres

En primer lugar recuerda que al insertar un texto o cadena debes entrecomillarlo con comillas simples y si quieres guardar una comilla como parte de la cadena puedes entrecomillar la palabra en sí y despues todo el texto.

También es posible utilizar una serie de caracteres de escape para introducir saltos de lineas, tabuladores, etc…

Caracter de escapeFunción que realiza
\\escribe el caracter \
\nnueva linea
\rretorno de carro
\bretroceso
\ttabulador
\fcambio de pagina

En el siguiente ejemplo la palabra gracias, estará en una segunda linea.

Tipo de Fecha y Hora

Tenemos disponibles 4 tipos de datos para insertar la fecha y hora en un campo. Son los siguientes:

DescripciónTipo de datosUnidadTamaño
Fechadatedía, mes y año4 bytes
Horatimehora, minuto, segundo y microsegundo4 bytes
Fecha y
Hora
timestampdía, mes, año, hora, minuto, segundo
y microsegundo
8 bytes
Intervalo
de tiempo
intervalsegundo, minuto, hora, dia, semana,
mes, año, decada, siglo y milenio
12 bytes

Tipo array

El tipo de dato Array es un tipo especial de PostgreSQL que permite almacenar más de un valor del mismo tipo en una columna.

Puedes acceder a los datos de este array viendo todos los valores o escogiendo la posición que quieras.

Si quieres conocer las dimensiones de un array puedes utilizar la función array_dims() indicando el nombre del campo entre paréntesis.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Perfiles en Redes Sociales