1
resposta

Nome de objeto '...' inválido? (parte 2)

IF OBJECT_ID('#REGISTROS_FISCAIS2', 'U') IS NOT NULL
BEGIN
    DROP TABLE #REGISTROS_FISCAIS2
    CREATE TABLE #REGISTROS_FISCAIS2 (DATA_VENDA DATE, NOTAS_EMITIDAS INT)    
END

@Bernardo, nesse trecho do seu código, as instruções dentro do IF só são executadas se a Tabela #REGISTROS_FISCAIS2 já existir previamente. Então na primeira vez que for executar, ele não vai entrar no IF e nunca vai criar a tal tabela.

Uma forma simples de resolver é deixar a criação da tabela para fora do END do IF. Ou criar um IF com apenas a instrução de DROP, podendo ficar sem a estrutura BEGIN (...) END.

O mesmo deve acontecer nas outras criações de tabelas do seu código completo.

Sou apenas um aluno também, então se algum instrutor puder validar minha resposta, seria ótimo! ;-)

Espero ter ajudado.

1 resposta

Olá Hibernon, tudo bem?

Isso mesmo Hibernon, o comando de criação da tabela deve ficar fora do IF onde está o comando DROP, ou criar apenas o IF sem a estrutura BEGIN (...) END.

Foi bem legal você ter compartilhado a sua resposta aqui no fórum :).

Continue assim, qualquer dúvida é só falar e bons estudos!