PostgreSQL: Tipos de Dados
O PostgreSQL, carinhosamente chamado de postgres, é um dos SGBDs (Sistemas Gerenciadores de Banco de Dados) mais famosos hoje em dia, sendo o SGBD open source mais querido pelos programadores atualmente (segundo minha experiência).
Nesse artigo busco apresentar os tipos de dados mais comuns suportados pelo postgres como ferramenta de consulta rápida e direta para outros desenvolvedores. Sem mais delongas, vamos ao conteúdo
Tipos de Dados
Numéricos
Inclui desde inteiros até números de ponto flutuante
smallint
: armazena valores inteiros com sinal, ocupando 2 bytes de tamanhointeger
: armazena valores inteiros com sinal, ocupando 4 bytes de tamanhobigint
: armazena valores inteiros com sinal, ocupando 8 bytes de tamanhodecimal
: armazena valores com muitos dígitos. Geralmente usado para armazenar valores financeiros. O desenvolvedor pode especificar a precisão e a escala para esse tiponumeric
: um apelido para o tipo de dadosdecimal
real
: armazena valores de ponto flutuante com 4 bytes e precisão de 6 dígitos decimaisdouble precision
: armazena valores de ponto flutuante com 8 bytes e precisão de 15 dígitos decimais
Caractere
Usados para lidar com alfanumérico e com textos
char(n)
: armazena strings de tamanho fixo com um tamanhon
específicovarchar(n)
: armazena strings de tamanho variável com com um tamanhon
máximotext
: armazena strings de tamanho variável sem tamanho máximo
Binários
Inclui basicamente o tipo de dados Byte
bytea
: armazena uma string de binários com tamanho variável, sem tamanho máximo
Data e Tempo
Diversas formas para lidar com datas e tempo
date
: armazena datas sem informação de time zone (YYYY-MM-DD)time
: armazena valores de tempo sem informação de time zone (HH:MM:SS)timestamp
: armazena valores de tempo e de data sem informações de time zonetimestamptz
: armazena valores de tempo e de data com informação de time zoneinterval
: um intervalo de tempo, como a diferença de dois timestamps
Booleano
Um tipo de dados para lidar com verdadeiro e falso
boolean
Enumerado
Criação de tipos de dados customizados, que consistem de um conjunto de valores ordenado e estático
CREATE TYPE AS ENUM
Exemplo:
CREATE TYPE mood AS ENUM ('sad', 'ok', 'happy');
Dados Geométricos e de Rede
point
,line
,lseg
,box
,polygon
,path
,circle
: armazena pontos, linhas e várias outras formasinet
,cidr
: armazena endereços IP e subredes
Conclusão
Com esse guia você tem uma referência inicial para conhecer os principais tipos de dados suportados pelo postgres, podendo seguir seus estudos a partir daqui dependendo da sua necessidade.
Esse artigo é um guia rápido para se orientar quando precisar achar um tipo de dados específico;.
Dúvidas, sugestões e correções de conteúdo são sempre muito bem vindas. Espero que você tenha gostado do conteúdo. Espero te ver no meu próximo artigo. Até lá!