[firebase-br] GEN_ID x dbExpress - RESOLVIDO

Almir Fiorio almirfiorio em ig.com.br
Ter Dez 14 17:37:36 -03 2004


ja tentou ver o artigo usando generator com trigger?'

http://www.firebase.com.br/cgi-bin/firebase.cgi/artigo?ID=1017


----- Original Message ----- 
From: "Álvaro Vieira" <arcoverdeneto em yahoo.com.br>
To: "FireBase" <lista em firebase.com.br>
Sent: Tuesday, December 14, 2004 4:14 PM
Subject: Re: [firebase-br] GEN_ID x dbExpress - RESOLVIDO


> Álvaro Vieira wrote:
> > Pessoal,
> >
> > Tentei usar a função abaixo para me retornar o próximo valor de um
> > GENERATOR, mas não está funcionando.
> >
> > Uso: Delphi 6 / Firebird 1.5 / dbExpress
> >
> > 01 function TDataMod.GetNextID : Integer;
> > 02 var
> > 03   qry : TSQLQuery;
> > 04 begin
> > 05   qry := TSQLQuery.Create(nil);
> > 06   qry.SQLConnection := DataMod.DB;
> > 07   qry.SQL.Text := 'select gen_id(GN_GERAL, 1) from rdb$database';
> > 08   qry.Open;
> > 09   Result := qry.Fields[0].AsInteger;
> > 10   qry.Close;
> > 11   FreeAndNil(qry);
> > 12 end;
> >
> > Na linha 12, apresenta a mensagem: "... EConvertError with message
> > "6029=' is not a valid floating point value'".
> >
> > Alguém pode me passar alguma dica? Será incompatibilidade do dbExpress
> > com o Firebird???
> >
>
> Resolvi o problema adicionando a função CAST ao comando sql.
> Ficou assim:
> 'select cast(gen_id(GN_GERAL, 1) as integer) from rdb$database'
>
> Obrigado à todos que enviaram dicas.
>
> Álvaro Vieira.
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
> Para editar sua configuração na lista, use o endereço
http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>





Mais detalhes sobre a lista de discussão lista