English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Neste tutorial, você aprenderá como criar tabelas temporárias usando SQL.
As tabelas temporárias são visíveis apenas para a sessão atual e são automaticamente excluídas ao fechar a sessão que criou a tabela.
Portanto, devido às tabelas temporárias não serem armazenadas permanentemente no banco de dados, isso é útil quando você precisa executar ou testar por um curto período de tempo algumas tabelas e deseja que a tabela desapareça automaticamente.
A declaração CREATE TEMPORARY TABLE é usada para criar tabelas temporárias.
CREATE TEMPORARY TABLE table_name (column definitions);
Se você quiser criar uma tabela temporária do zero, você pode usar a palavra-chave TEMPORARY ao criar a tabela, ou seja, substituir a declaração CREATE TABLE pela CREATE TEMPORARY TABLE. Para uma sintaxe completa e exemplos, consulte Crie a tabelaum capítulo.
No caso de você quer testar consultas SQL sem afetar o banco de dados, as tabelas temporárias podem ser muito úteis. Vamos emNo banco de dados MySQLCrie uma cópia temporária da tabela existente.
Digite o seguinte comando no prompt de comando do MySQL e pressione Enter:
mysql> CREATE TEMPORARY TABLE persons SELECT * FROM persons;
A expressão acima cria dinamicamente uma tabela temporária chamada persons a partir do resultado da tabela base existente persons. Além disso, pois é uma cópia temporária da tabela persons, você pode executarINSERT,UPDATEouDELETEqualquer operação, sem se preocupar em afetar erroneamente a tabela base original persons.
Dica:A tabela temporária pode ter o mesmo nome que a tabela base permanente. Se o nome da tabela temporária especificada coincidir com o nome da tabela base existente, a tabela base permanente será ocultada até que a tabela temporária seja excluída.
Atenção:Como a tabela temporária é específica para a sessão, duas sessões diferentes podem usar o mesmo nome de tabela temporária sem conflitos.
A tabela temporária será excluída automaticamente após o encerramento da conexão ou sessão de criação. No entanto, se você deseja excluí-las sem fechar a sessão atual, você pode usar a seguinte instrução DROP TEMPORARY TABLE:
mysql> DROP TEMPORARY TABLE persons;
A seguinte instrução será removidapersonsExcluir a tabela temporária do banco de dados. Após isso, opersonsA tabela base será tornada visível.