Firebird 2.5 - Diferença entre executar e debuggar
Boa tarde!
Utilizando o Firebird 2.5, possuo uma Stored Procedure que faz a filtragem e alguns tratamentos de exibição dos dados de uma tabela.
Faço um for select com a filtragem e dentro dele, há um execute block (escrito em uma variável varchar) que é chamado por um execute statement.
Debugando diretamente dentro do IBExpert, os resultados apresentados estão corretos (dentro do que eu esperava que acontecesse), porém se uso um comando SQL para executar esta procedure ou executo diretamente dentro dela (pressionando F9, sem debug mode), os resultados apresentados estão bagunçados, repetindo alguns registros, trazendo todas as colunas preenchidas (sendo que o execute block serve justamente para selecionar qual coluna deve retornar o valor e todas as outras deixar nulas).
Alguém tem alguma ideia do porque isso pode ocorrer?
Abraço, Pedro.
Utilizando o Firebird 2.5, possuo uma Stored Procedure que faz a filtragem e alguns tratamentos de exibição dos dados de uma tabela.
Faço um for select com a filtragem e dentro dele, há um execute block (escrito em uma variável varchar) que é chamado por um execute statement.
Debugando diretamente dentro do IBExpert, os resultados apresentados estão corretos (dentro do que eu esperava que acontecesse), porém se uso um comando SQL para executar esta procedure ou executo diretamente dentro dela (pressionando F9, sem debug mode), os resultados apresentados estão bagunçados, repetindo alguns registros, trazendo todas as colunas preenchidas (sendo que o execute block serve justamente para selecionar qual coluna deve retornar o valor e todas as outras deixar nulas).
Alguém tem alguma ideia do porque isso pode ocorrer?
Abraço, Pedro.
Pedro Heemann
Curtidas 0
Respostas
Pedro Heemann
13/07/2016
Resolvido. Por algum motivo, o Firebird entra em colapso quando executava o "execute block" sem dar nenhum retorno (suspend), que é o que ocorria quando nenhuma situação era atendida.
GOSTEI 0