Erro ao excluir tabela temporária

02/09/2011

Olá,

tenho uma procedure que esta apresentando a seguinte mensagem:


Server: Msg 3701, Level 11, State 5, Procedure ProcTeste, Line 36
Cannot drop the table '#TESTE', because it does not exist in the system catalog.

Stored Procedure: Diversos.dbo.ProcTeste
Return Code = 0

Estranho, pois tenho o seguinte comando na procedure:
IF EXISTS(Select name From TempDB..SysObjects where name LIKE '#TESTE')
DROP TABLE #TESTE


create table #teste(valores varchar(8000))

Ricardo Albano

Respostas

02/09/2011

Marco Pinheiro

Ricardo,

Vi que você está criando uma tabela temporária local. A sua procedure está sendo rodada na mesma sessão que a criou? Se estiver rodando em outra sessão realmente a mensagem que vc postou vai aparecer.

Outro ponto a ser avaliado é o banco. Vc está conectado no banco certo com o owner correto?

Att.,
Responder Citar

18/10/2011

Bretas

Ricardo, o SQL Server te da a possibilidade de criar uma variável do tipo tabela.

Por exemplo:
declare @TabelaTemp table (Campo TIPO NOT NULL)


Quando preciso de uma tabela temporária prefiro declarar como variável pois quando saí da procedure, o próprio gerenciador some com ela... rs!

Att.
Responder Citar