Crie uma tabela temporária no PostgreSQL

introdução

quando estiver trabalhando com tabelas grandes no PostgreSQL, você pode achar que precisa interagir com um determinado subconjunto de linhas em uma tabela repetidamente. Em vez de filtrar repetidamente sua tabela para obter esse subconjunto de dados, é mais eficiente buscar essas linhas uma vez e armazená-las em uma tabela temporária. Este tutorial ensinará como criar uma tabela temporária e depois removê-la quando terminar.

pré-requisitos

Se você quiser acompanhar os exemplos do PostgreSQL neste tutorial, certifique-se de ter o servidor PostgreSQL instalado e configurado em sua máquina. O serviço precisa ser executado em segundo plano.

Os usuários do Linux e do Windows podem baixar o PostgreSQL aqui.

o que é uma tabela temporária do PostgreSQL?

existem tabelas temporárias em seu próprio esquema exclusivo, portanto, você não pode atribuir um nome de esquema ao criar esse tipo de tabela. Uma tabela temporária existe apenas enquanto sua sessão de banco de dados– isso significa que o PostgreSQL descarta automaticamente a tabela temporária no final ou uma transação ou uma sessão.

exemplo de caso de Uso para uma tabela temporária do PostgreSQL

as tabelas temporárias são úteis para desenvolvedores de aplicativos e administradores de banco de dados que interagem com grandes bancos de dados regularmente. Eles são especialmente valiosos em situações que exigem a consulta repetida ou processamento de um pequeno subconjunto de dados dentro de uma tabela maior.

nesses casos, podemos armazenar os dados filtrados na tabela temporária; podemos usar essa tabela temporária repetidamente sem ir ao banco de dados real. Essas tabelas residem dentro tempdb, que também é um sistema de banco de dados.

existem duas maneiras de criar uma tabela temporária. Primeiro, podemos usar o TEMPORARY cláusula em CREATE TABLE instrução:

1
2
3
CRIAR a TABELA TEMPORÁRIA your_temp_table_name(
);

em Alternativa, podemos usar o TEMP cláusula:

1
2
3
CRIAR a TABELA temporária your_temp_table_name(

);

tabelas Temporárias são visíveis apenas dentro da sessão em que foi criado; outras sessões será capaz de visualizá-lo.

Criando um exemplo de tabela temporária

para criar uma tabela temporária, primeiro precisamos nos conectar ao nosso servidor PostgreSQL usando o comando psql. Em seguida, criaremos um banco de dados, nomeando-o dbsandbox.

podemos fazer isso usando a seguinte instrução:

1
2
3
4
postgres=# CRIAR BANCO de dados sandboxdb;
CREATE DATABASE
postgres=# \c sandboxdb;
agora Você está conectado AO BANCO de dados “sandboxdb” COMO USUÁRIO “teamsolo”.

uma Vez que o banco de dados é criado, é hora de criar a nossa tabela temporária usando a instrução a seguir:

1
2
sandboxdb=# CREATE TEMP TABLE temptbl(um INT);
Criar tabela

com esta declaração, criamos nossa tabela TEMP chamada temptbl dentro do banco de dados sandboxdb.

Para verificar que a tabela foi criada com êxito, podemos usar um SELECT instrução:

1
SELECT * FROM temptbl;

O resultado de nosso SELECT deve ter o seguinte aspecto:

1
2
3
c

(0 LINHAS)

Anteriormente nesta seção, nós mencionamos que uma tabela temporária é visível somente para a sessão atual no qual ele foi criado. Vamos testar e ver se isso é verdade criando outra sessão no PostgreSQL. Nesta nova sessão, tentaremos nos conectar ao temptable. Para fazer isso, primeiro saia da conexão atual usando o comando \q e tente reconectar novamente usando as etapas anteriores. Um exemplo desse processo é mostrado abaixo:

1
2
3
4
5
postgres=# \c sandboxdb;
agora Você está conectado AO BANCO de dados “sandboxdb” COMO USUÁRIO “teamsolo”.
sandboxdb=# SELECT * FROM temptbl;
ERRO: relação “temptbl” NÃO existe
LINHA 1: SELECT * FROM temptbl;

Observe que temos um erro quando tentamos executar o SELECT operação contra a tabela temporária temptbl. Isso ocorre porque o temptbl foi imediatamente descartado pelo PostgreSQL assim que executamos o comando \q e encerramos essa sessão específica.

removendo um exemplo de tabela temporária

na seção anterior, aprendemos como criar uma tabela temporária. Agora, vamos falar sobre como remover ou soltar uma tabela temporária.

abaixo é Mostrada a sintaxe utilizada para a colocação de uma tabela temporária:

1
DROP TABLE your_temp_table_name;

observe que a instrução DROP TABLE não possui cláusulas como TEMPORARY e TEMP, ao contrário da instrução CREATE TABLE.

Vamos dizer que queria deixar o temptbl durante a sessão– nós podemos fazer isso usando a instrução a seguir:

1
sandboxdb=# DROP TABLE temptbl;

Conclusão

não Há dúvida de que as tabelas temporárias podem ajudar a otimizar suas interações com banco de dados, permitindo que você armazene um subconjunto menor de linhas de uma tabela maior, em vez de filtrar os mesmos dados novamente e novamente. Neste tutorial, explicamos como criar uma tabela temporária e como soltar uma usando as instruções CREATE TEMP TABLE e DROP TABLE. Usando os exemplos que fornecemos como guia, você poderá criar e gerenciar tabelas temporárias para suas próprias interações de banco de dados.

Deixe uma resposta

O seu endereço de email não será publicado.