Tipo de dados bigint no Postgres

Tipo de dados bigint no Postgres
Um tipo de dados inteiro representa uma gama de números inteiros matemáticos. Um número inteiro pode ou não ter permissão para conter valores negativos. PostgreSQL, sendo um mecanismo de banco de dados moderno, permite armazenar vários tipos de dados, incluindo números inteiros.

Neste guia, vamos nos concentrar no Bigint Tipo de dados no PostgreSQL.

PostGresql Inteiros

Matematicamente, um número inteiro é definido como um número inteiro: número positivo/negativo (incluindo 0). Quando estamos tentando armazenar um número inteiro na memória de um computador, ele ocupa algum espaço. Dependendo do tamanho de um número inteiro, o tamanho necessário difere.

Postgres vem com três tipos diferentes de dados inteiros:

  • Smallint: Dados inteiros de 16 bits
  • Inteiro: Dados inteiros de 32 bits
  • Bigint: Dados inteiros de 64 bits

O Bigint O tipo de dados inteiro ocupa 64 bits (ou 8 bytes) de armazenamento. O valor pode ser de -263 a 263-1. Para a maioria dos casos de uso, o intervalo é grande o suficiente para manter qualquer valor inteiro.

No entanto, Bigint Vem com várias desvantagens. Como ele usa uma quantidade tão grande de memória para cada entrada, pode levar a um uso de memória alta. Também pode levar a um desempenho mais lento. Isso é por que Bigint só deve ser usado quando necessário e não fora de luxo.

Pré -requisitos

Para executar as etapas demonstradas neste guia, você precisará dos seguintes componentes:

  • Um sistema Linux adequadamente configurado. Para a prática, é prática comum girar uma nova máquina virtual. Saiba mais sobre a instalação do Ubuntu no VirtualBox.
  • Uma instalação de PostgreSQL em funcionamento. Saiba mais sobre a instalação do PostgreSQL no Ubuntu.

Demonstração de uso de bigint

Nesta seção, teremos uma demonstração rápida de usar Bigint para armazenar os dados de magnitude apropriada.

Primeiro, vamos dar uma rápida olhada na limitação do Inteiro tipo de dados. Crie uma nova tabela para a demonstração:

Criar tabela Demo_integer (
Id Id Serial Primary Key,
nome Varchar (255) não nulo,
Valor Inteiro Não Verificação NULL (Valor> 0)
);

Agora, tentaremos inserir algumas entradas na mesa:

Inserir em Demo_integer (nome, valor)
Valores
('dentro_RANGE', 10000000),
('Out_of_Range', 999999999999999999);

Como o erro sugere, o valor de fora de alcance a entrada está fora de alcance do que o Inteiro pode armazenar. Para armazenar o valor, precisamos Bigint.

Podemos alterar o tipo de coluna com a seguinte consulta:

Alterar Demo_integer
Alterar o valor da coluna BigInt;

Agora, tente inserir as entradas novamente:

Inserir em Demo_integer (nome, valor)
Valores
('dentro_RANGE', 10000000),
('Out_of_Range', 999999999999999999);

Verifique o resultado:

$ SELECT * de Demo_Integer;

Conclusão

Neste guia, discutimos os vários tipos de dados inteiros que o PostGresql suporta, incluindo Bigint. Também mostramos o uso de Bigint em uma demonstração simples. Trabalhamos com uma tabela de demonstração para demonstrar o uso de Bigint. Se já houver outras tabelas presentes no banco de dados, consulte a lista de tabelas PostgreSQL para acompanhá -las. PostgreSQL vem com muitos tipos de dados suportados. Por exemplo, booleano, numérico, caráter, data e hora, JSON e muito mais.

Interessado em aprender mais? A subcategoria PostgreSQL contém vários outros guias sobre os vários aspectos do PostgreSQL. Computação feliz!