Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
tempdb é um banco de dados do sistema SQL Server PDW que armazena tabelas temporárias locais para bancos de dados de usuários. As tabelas temporárias são frequentemente usadas para melhorar o desempenho da consulta. Por exemplo, você pode usar uma tabela temporária para modularizar um script e reutilizar dados computados.
Para obter mais informações sobre bancos de dados do sistema, consulte Bancos de dados do sistema.
Termos e Conceitos Chave
Tabela temporária local
Uma tabela temporária local usa o prefixo # antes do nome da tabela e é uma tabela temporária criada por uma sessão de usuário local. Cada sessão só pode acessar os dados em tabelas temporárias locais para sua própria sessão.
Cada sessão pode exibir os metadados de tabelas temporárias locais em todas as sessões. Por exemplo, todas as sessões podem exibir os metadados de todas as tabelas temporárias locais com a SELECT * FROM tempdb.sys.tables consulta.
Tabela temporária global
As tabelas temporárias globais, com suporte no SQL Server com a sintaxe ##, não são suportadas nesta versão do SQL Server PDW.
PDWTEMPDB
pdwtempdb é o banco de dados que armazena tabelas temporárias locais.
PDW não implementa tabelas temporárias usando o banco de dados tempdb do SQL Server. Em vez disso, o PDW os armazena em um banco de dados chamado pdwtempdb. Esse banco de dados existe em cada nó de computação e é invisível para o usuário através das interfaces PDW. No Admin Console, na página de armazenamento, você verá esses dados contabilizados em um banco de dados do sistema PDW chamado tempdb-sql.
tempdb (banco de dados temporário)
tempdb é o banco de dados tempdb do SQL Server. Ele usa o mínimo de registro. O SQL Server usa tempdb nos nós de computação para armazenar tabelas temporárias de que ele precisa durante a execução de operações do SQL Server.
O SQL Server PDW descarta tabelas do tempdb quando:
A instrução DROP TABLE é executada.
Uma sessão está desconectada. Apenas tabelas temporárias da sessão atual são eliminadas.
O aparelho está desligado.
O nó de controlo tem uma transferência de cluster.
Observações gerais
O SQL Server PDW executa as mesmas operações em tabelas temporárias e permanentes, salvo indicação explícita em contrário. Por exemplo, os dados em tabelas temporárias locais, assim como tabelas permanentes, são distribuídos ou replicados entre os nós de computação.
Limitações e Restrições
Limitações e restrições no banco de dados tempdb do SQL Server PDW. Não pode:
Crie uma tabela temporária global que comece com ##.
Execute um backup ou restauração do tempdb.
Modifique as permissões para tempdb com as instruções GRANT, DENY ou REVOKE .
Execute DBCC SHRINKLOG para o banco de dados tempdb .
Execute operações DDL em tempdb. Existem algumas exceções a esta regra. Para obter detalhes, consulte a seguinte lista de limitações e restrições em tabelas temporárias locais.
Limitações e restrições sobre tabelas temporárias locais. Não pode:
Renomear uma tabela temporária
Crie partições, exibições ou índices não clusterizados em uma tabela temporária. ALTER INDEX pode ser usado para reconstruir um índice clusterizado para uma tabela criada com um.
Modifique permissões das tabelas temporárias com as instruções GRANT, DENY ou REVOKE.
Execute comandos do console de banco de dados em tabelas temporárias.
Use o mesmo nome para duas ou mais tabelas temporárias dentro do mesmo lote. Se mais de uma tabela temporária local for usada em um lote, cada uma deverá ter um nome exclusivo. Se várias sessões estiverem executando o mesmo lote e criando a mesma tabela temporária local, o SQL Server PDW acrescentará internamente um sufixo numérico ao nome da tabela temporária local para manter um nome exclusivo para cada tabela temporária local.
Observação
Você pode criar e atualizar estatísticas em uma tabela temporária. ALTER INDEX pode ser usado para reconstruir um índice clusterizado.
Permissões
Qualquer usuário pode criar objetos temporários no tempdb. Os usuários só podem acessar seus próprios objetos, a menos que recebam permissões adicionais. É possível revogar a permissão de conexão para tempdb para impedir que um usuário use tempdb, mas isso não é recomendado, pois algumas operações de rotina exigem o uso de tempdb.
Tarefas relacionadas
| Tarefas | Descrição |
|---|---|
| Crie uma tabela no tempdb. | Você pode criar uma tabela temporária de usuário com as instruções CREATE TABLE e CREATE TABLE AS SELECT. Para obter mais informações, consulte CREATE TABLE e CREATE TABLE AS SELECT. |
| Exiba uma lista de tabelas existentes no tempdb. | SELECT * FROM tempdb.sys.tables; |
| Exiba uma lista de colunas existentes no tempdb. | SELECT * FROM tempdb.sys.columns; |
| Exiba uma lista de objetos existentes no tempdb. | SELECT * FROM tempdb.sys.objects; |