UUID significa Universal Identifier, definido pela RFC 4122. O valor UUID é calculado por um algoritmo e o valor tem 128 bits de comprimento. O UUID gera um valor exclusivo que é melhor que os dados em série que gera valores singulares. PostgreSQL não tem nenhuma função para criar o valor UUID. Depende do módulo de terceiros nomeado UUID-OSSP que acessa as funções necessárias para criar o valor UUID. A maneira de instalar o UUID-OSSP Módulo e os usos do tipo de dados UUID no banco de dados PostGresql foram mostrados neste tutorial.
Pré-requisitos:
Você deve instalar a versão mais recente dos pacotes PostGresql no sistema operacional Linux antes de executar as instruções SQL mostradas neste tutorial. Execute os seguintes comandos para instalar e iniciar o PostgreSQL:
$ sudo apt-get -y install postgresql postgresql-contra
$ sudo SystemCtl Iniciar PostgreSQL.serviço
Execute o seguinte comando para fazer login no PostgreSQL com permissão de raiz:
$ sudo -u postgres psql
Instale o módulo UUID-OSSP:
Se o UUID-OSSP O módulo não foi instalado antes no PostgreSQL e execute o seguinte comando para instalar o módulo. Aqui, a cláusula 'se não existe' foi usada para impedir a reinstalação do módulo se já estiver instalado.
# Crie extensão, se não existe "UUID-OSSP";Depois de instalar o UUID-OSSP Módulo com sucesso, execute o seguinte comando select para gerar um UUID com base no endereço MAC do computador, valor de timestamp e um valor aleatório. Aqui o uuid_geneate_v1 () A função tem sido usada para gerar o valor exclusivo.
# Selecione UUID_GENERATE_V1 ();A saída a seguir aparecerá após a execução da consulta acima:
Execute o seguinte comando select para gerar UUID com base no valor aleatório. Aqui o uuid_geneate_v4 () A função tem sido usada para gerar o valor exclusivo.
# Selecione UUID_GENERATE_V4 ();A saída a seguir aparecerá após a execução da consulta acima:
Uso de UUID no PostgreSQL:
Antes de criar qualquer tabela com o tipo de dados booleano, você deve criar um banco de dados PostGresql. Então, execute o seguinte comando para criar um banco de dados chamado 'testdb':
# Criar banco de dados TestDB;A saída a seguir será exibida após a criação do banco de dados:
Crie uma tabela usando o tipo de dados UUID:
O ID da fatura é sempre único para qualquer documento de fatura. O tipo de dados UUID é uma opção melhor para criar um ID exclusivo. Crie uma tabela chamada 'Fatura'No banco de dados atual com quatro campos. O primeiro nome de campo é Invoice_id qual é a chave primária da tabela. O tipo de dados deste campo é Uuid. Se nenhum valor for fornecido para o Invoice_id Campo no momento da inserção de dados, o valor padrão será gerado usando a função UUID_GERATE_V4 (). O segundo nome de campo é order_date e o tipo de dados deste campo é DATA que será usado para armazenar a data do pedido. O terceiro nome de campo é Identificação do Cliente e o tipo de dados deste campo é char (6) para armazenar o valor da string de 4 caracteres. O quarto campo é Valor do pedido e o tipo de dados deste campo é Int Para armazenar o valor do pedido.
# Criar fatura de tabela (A saída a seguir aparecerá se a tabela for criada com sucesso:
Execute a seguinte consulta de inserção para inserir quatro registros no Fatura mesa. Os valores para o Invoice_id O campo não é dado na seguinte consulta. Então o uuid_geneate_v4 () a função gerará os valores para o Invoice_id campo.
# Inserir na fatura (order_date, cliente_id, order_amount)A saída a seguir aparecerá após a execução da consulta acima. A saída mostra que quatro registros foram inseridos corretamente no Fatura mesa:
Execute a seguinte consulta selecionada para ler todos os registros do Fatura mesa:
# Selecione * da fatura;A saída a seguir aparecerá após a execução da consulta acima. A saída mostra o quatro ID exclusivo gerado para o Invoice_id campo:
Execute o seguinte Selecione consulta que lerá esses registros do Tabela de fatura onde o valor do data do pedido O campo é menor que '2022-05-15':
# Selecione * da fatura onde Order_date < '2022-05-15';A saída a seguir aparecerá após a execução da consulta acima. A tabela contém dois registros em que o valor do data do pedido é menor que '2022-05-15'.
Execute o seguinte Selecione consulta que lerá esses registros da tabela de fatura onde o valor do data do pedido O campo está entre '2022-05-15' e '2022-05-20'.
# Selecione * da fatura em que Order_date entre '2022-05-15' e '2022-05-20';A saída a seguir aparecerá após a execução da consulta acima. A tabela contém um registro que corresponde à condição.
Execute o seguinte Selecione consulta que lerá esses registros da tabela de fatura onde o valor do Valor do pedido é maior que 50000.
# Selecione * da fatura onde Order_amount> 50000;A saída a seguir aparecerá após a execução da consulta acima. Dois registros existem na tabela onde o valor do Valor do pedido é maior que 50000.
Execute o seguinte Selecione consulta que lerá esses registros da tabela de fatura onde o valor do Valor do pedido é maior que 50000 e menor que 70000.
# Selecione * da fatura onde Order_amount> 50000 e Order_amount < 70000;A saída a seguir aparecerá após a execução da consulta acima. A tabela contém um registro que corresponde à condição.
Conclusão:
A maneira de usar o Tipo de dados UUID e o uso desse tipo de dados para gerar ID exclusivo em PostGresql Tabelas foram mostradas neste tutorial. O objetivo de usar o Tipo de dados UUID será liberado depois de ler este tutorial corretamente.