Tabelas Temporárias

Há situações em que necessitámos de criar tabelas de uso temporário.

Criam-se da forma usual e têm as mesmas características que as “normais” excepto a persistência.

Dois Tipos:

  • Temporárias Locais

  • Temporárias Globais

Tabelas como Variáveis

Temporárias Locais

São sinalizadas com o carácter # antes do nome.

São criadas na base de dados tempdb.

Estão visíveis

  • Só na sessão que as criou

  • No level em que são criados e todos os inner level (da call stack)

São eliminadas quando o procedimento ou função termina.

  • Podem ser eliminadas da forma normal (drop)

No caso de uma batch ad-hoc (query editor) fica visível até encerrar a sessão, mesmo tendo um GO pelo meio.

Call Stack

Temporárias Globais

Utilizamos dois ## antes do nome.

Similares às local temporary tables (tempdb) mas têm um scope maior.

  • Ficam visíveis para outras sessões.

    • Apropriadas para partilha de dados

    • Todos têm full access!!!

  • São eliminadas quando a última sessão desconecta.

Alternativa: Criar a tabela normalmente na BD tempdb. Só é eliminada quando o SQL Server reinicializa.

Last updated