VB6 - erro na query em um programa cujo fonte não funcionava

09/01/2020

8

Saudações, Devs

Tenho um programa em vb6 que sempre funcionou e, de repente, deu esse erro no oracle ORA-00936: expressão não encontrada. Existe outra parte do programa em que o erro apresentado é Run-time error 3704: Operação não permitida quando o objeto está fechado.

Sem debugar o código, que o desenvolvedor saiu sem conseguir fazer funcionar, imagino que o usuário entrou com algum caractere maluco ou a query ficou muito grande dando o erro no Oracle.

Meu plano é, caso não consiga fazer o programa funcionar na minha máquina é tentar simular a query. Isso, enquanto o dia não vira e o programa volte a funcionar.
Responder

Post mais votado

10/01/2020

Boa tarde Fernando.
Vamos por partes.
E tentar lembrar como o VB funciona...rs

Bom, o erro do ORACLE quer dizer que o comando / query está com alguma coisa errada.
Pode ser o que vc falou, o usuário entrou com um caractere errado, ou, por exemplo, vc tem uma query montada dinamicamente, onde o VB vai montando ela pra vc (colocando os campos e respectivos valores, por exemplo).
Ai em um dos valores ele não retorna nada, vc fica com algo como SELECT campo1, , campo3 FROM tabela. Isso causaria o erro.

O segundo erro, do VB, tem a ver com o seu objeto de conexão.
Ele parece ter sido fechado, e vc está tentado usá-lo.

Você vai precisar debugar esse código para tentar achar o local específico do erro.

Espero ter ajudado.

Grande abraço
Responder

Mais Posts

Boa tarde Fernando.
Vamos por partes.
E tentar lembrar como o VB funciona...rs

Bom, o erro do ORACLE quer dizer que o comando / query está com alguma coisa errada.
Pode ser o que vc falou, o usuário entrou com um caractere errado, ou, por exemplo, vc tem uma query montada dinamicamente, onde o VB vai montando ela pra vc (colocando os campos e respectivos valores, por exemplo).
Ai em um dos valores ele não retorna nada, vc fica com algo como SELECT campo1, , campo3 FROM tabela. Isso causaria o erro.

O segundo erro, do VB, tem a ver com o seu objeto de conexão.
Ele parece ter sido fechado, e vc está tentado usá-lo.

Você vai precisar debugar esse código para tentar achar o local específico do erro.

Espero ter ajudado.

Grande abraço


O problema é que eu não tenho o fonte. Estava pensando em acionar o dba para monitorar a execução do programa e verificar se ele mostra a query mal sucedida. Então eu solicitaria uma autorização da área usuária para fazer uma intervenção na base de dados para corrigir esse problema que ocorreu apenas com uma matrícula, mas com a minha o problema não acontece.
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários. Para saber mais sobre o uso de cookies,
consulte nossa política de privacidade. Ao continuar navegando em nosso site, você concorda com a nossa política.

Aceitar