Utilizando Tabelas Temporárias no SQL Server
Boa noite computêros…
Chega uma hora na vida de um computêro que ele precisa utilizar as tabelas temporárias no SQL Server, então vamos adiantar e mostrar como funciona…
O conceito de tabelas temporárias é simples, pelo nome já sabemos, são tabelas utilizadas para armazenamento temporário de dados, eu disse tabelas para armazenamento temporário de dados, isso quer dizer que, funcionam como uma tabela normal, porém, são dropadas automaticamente após a o encerramento da conexão. Se funcionam como tabelas normais elas ocupam espaço em disco, se ocupam espaço em disco significam que estão no HD, se estão no HD significam que o desempenho cai, já que o processador precisa buscar os dados e “jogar” na memória RAM e todo aquele conceito de paginação e blablabla das aulas de sistemas operacionais que você dormia ao invés de prestar atenção.
Principais características das tabelas temporárias:
- São armazenadas no database tempdb
- São visíveis apenas enquanto a conexão está ativa
- São removidas após o encerramento da conexão
- Podem ser locais ou globais
Principais diferenças entre tabelas temporárias locais e tabelas temporárias globais:
- Tabelas Temporárias Locais
São criadas com o prefixo “#” e somente serão visíveis na conexão que as criaram.
- Tabelas Temporárias Globais
São criadas com o prefixo “##” e são visíveis a todas as conexões.
Exemplos de utilização:
Para os exemplos de utilização abaixo irei utilizar como database a NorthWind, padrão de exemplos do SQL
- CREATE
--criando uma tabela temporaria com dois campos, um para armazenar o id e outro para armazenar o name
create table #temp_categorias
(
categoryId int,
categoryName nvarchar(15)
)
- INSERT
--inserindo valores à tabela
insert into #temp_categorias values (1,'Computêro')
- SELECT
--selecionando os valores da tabela de categorias, o select funciona como uma tabela normal, podendo ter where, joins e tudo mais
select * from #temp_categorias
- UPDATE
--update numa tabela temporaria
update #temp_categorias set categoryName = 'Computêro - SQL' where categoryId = 1
- DELETE
--deletando todos os dados da tabela temporaria
delete from #temp_categorias
- DROP
--removendo a tabela temporaria (lembrando que a tabela temporaria é removida automaticamente ao encerrar a conexão)
drop table #temp_categorias
- SELECIONANDO VALORES DE UMA TABELA E CRIANDO UMA TEMPORARIA AUTOMATICAMENTE
--selecionando valores de uma tabela e inserindo numa tabela temporaria temporaria que sera automaticamente criada
select categoryId,categoryName into #temp_categorias from Categories
Acho que agora já entendemos como funcionam as tabelas temporárias, mas vamos entender melhor a diferença entre tabelas temporárias locais e globais?
- Tabelas Temporárias Locais

- Exemplo de Utilização deTabelas Temporárias Locais
- Tabelas Temporárias Globais

- Exemplo de utilização de Tabelas Temporárias Globais
Caso restar alguma dúvida, ou quiserem deixar alguma sugestão… já sabem… comentem!!!!!!
É pessoal, espero que seja útil, aleluia consegui fazer um artigo sem ser uma dica rápida, é que as coisas andam muito corridas, e para não deixar de alimentar o blog diariamente eu ia postando coisas mais rápidas, mas úteis da mesma forma… é isso aí… até a próxima e comentem!!!