Situação estranha com o Firebird Delphi 2007

Firebird

15/10/2007

Oi,

[i:9f6e723af2]Em primeiro lugar não sei se é esta a secção correcta para postar ou o do Delphi, o Moderador depois verifique a situação, obrigado.[/i:9f6e723af2]

Ocorre uma situação estranha com um programa que tenho, é o seguinte, eu tinha em Delphi 2006 dbx 3 + Firebird, eu tinha um código que gerava um erro ´reader has no more rows´, e depois verificava se ´recordcount=0´ e como estava dentro de um ´Try...´ capturava a situação e fazer uma acção.
Agora, fiz a passagem para o Delphi 2007 dbx4, e o mesmo código não funciona, isto é, mesmo com o ´Try...´ ele ignora e é mostrado o erro e não é feita a acção que eu pretendia!!!

Alguém sabe se existe algum método novo a ser feito ou é mesmo a versão do Delphi 2007 dbx4 que possui bug ou outra forma de lidar com o Firebird?

Agradeço dicas/ajuda.

LuBoc


Luboc

Luboc

Curtidas 0

Respostas

Misterzire

Misterzire

15/10/2007

Após varios anos utilizando D7 resolvi migrar para o D2007 e identifiquei que meu sistema esta apresentando o erro ´Reader has no more rows´.
Como resolver esse problema definitivamente ?
Comigo ocorreu pois minha query não possuia registros numa linha de codigo onde eu tentava comparar um valor dessa mesma tabela com Null conforme descrito abaixo:

result := mQuery("campo´).IsNull ;

Contornei essa situação do seguinte modo

If mQuery.isEmpty then
 result := False
else 
 result := mQuery(´campo´).IsNull



Mas acredito que exista alguma configuração ou nova versão que não tenha esse problema pois o mesmo não ocorria no D7.
Qualque ajuda será bem vida .


GOSTEI 0
POSTAR