[firebase-br] Conversão cast com alteração de valor

Carlos H. Cantu listas em warmboot.com.br
Terça Novembro 16 14:20:08 -03 2021


Eu uso a versão paga.
Sugiro que entre em contato com eles.

[]s
Carlos H. Cantu
eBook Guia de Migração para o FB 4 - www.firebase.com.br/guiafb4.php
www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br

G> Atualizei para a versão 2021.11.16.1 (personal edition) e, ainda, continua
G> com o mesmo problema.

G> Em seg., 15 de nov. de 2021 às 17:57, Carlos H. Cantu via lista <
G> lista em firebase.com.br> escreveu:

>> Qual a versão do seu IBExpert? O problema foi corrigido na versão
>> 2021.11.14
>>
>> []s
>> Carlos H. Cantu
>> eBook Guia de Migração para o FB 4 - www.firebase.com.br/guiafb4.php
>> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
>>
>> SN> No meu IBExpert deu
>>
>> SN> VLRORIGINAL VLRCONVERTIDO
>> SN> 1485.45            1485,4500000000003
>>
>> SN> Em seg., 15 de nov. de 2021 às 09:44, Carlos H. Cantu via lista <
>> SN> lista em firebase.com.br> escreveu:
>>
>> >> A atualização do IBExpert lançada ontem resolveu o problema.
>> >>
>> >> []s
>> >> Carlos H. Cantu
>> >> eBook Guia de Migração para o FB 4 - www.firebase.com.br/guiafb4.php
>> >> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
>> >>
>> >> G> SET SQL DIALECT 3;
>> >> G> Este é o único dialeto que uso.
>> >> G> Será que o processo de conversão no IBExpert pode vir a usar outro
>> >> dialeto
>> >> G> diferente ?
>> >> G> Estes são os resultados usando o isql (arquivo anexo)
>> >>
>> >> G> Em ter., 9 de nov. de 2021 às 16:07, Carlos H. Cantu via lista <
>> >> G> lista em firebase.com.br> escreveu:
>> >>
>> >> >> Deve estar com dialeto 1, aí numeric (18,13) é armazenado
>> internamente
>> >> >> com double precision (que garante precisão de 15 dígitos) e não como
>> >> >> bigint!
>> >> >>
>> >> >> No dialeto 3 não tem "sujeira".
>> >> >>
>> >> >> []s
>> >> >> Carlos H. Cantu
>> >> >> eBook Guia de Migração para o FB 4 - www.firebase.com.br/guiafb4.php
>> >> >> www.FireBase.com.br - www.firebirdnews.org - blog.firebase.com.br
>> >> >>
>> >> >> PGvl> Boa tarde,
>> >> >>
>> >> >> PGvl> Firebird 2.5
>> >> >> PGvl> ===
>> >> >> PGvl> SELECT '123456,123' ORIGINAL,
>> >> >> PGvl> CAST('123456.123' AS NUMERIC(18,13)) CONVERTIDO
>> >> >> PGvl> FROM RDB$DATABASE;
>> >> >> PGvl> ===
>> >> >> PGvl> ISQL
>> >> >> PGvl> ORIGINAL    CONVERTIDO
>> >> >> PGvl> ==========  =====================
>> >> >> PGvl> 123456,123  123456.1230000000000
>> >> >>
>> >> >> PGvl> =================================
>> >> >> PGvl> IBEXPERT
>> >> >> PGvl> ORIGINAL    CONVERTIDO
>> >> >> PGvl> 123456,123  123456,1230000000210
>> >> >> PGvl> =================================
>> >> >>
>> >> >> PGvl> No IBExpert observamos o resíduo (0000000210),
>> >> >> PGvl> fez o CAST usando Float.
>> >> >>
>> >> >> PGvl> =======
>> >> >> PGvl> Float
>> >> >> PGvl> https://www.h-schmidt.net/FloatConverter/IEEE754.html
>> >> >> PGvl>     0,3=0,300000011920928955078125
>> >> >> PGvl> 0,1+0,2=0,300000004470348358154296
>> >> >> PGvl> 0,1+0,2=0,3 FALSE
>> >> >> PGvl> =======
>> >> >> PGvl> --
>> >> >> PGvl> Paulo Geloramo
>> >> >>
>> >> >> PGvl> Em sex., 5 de nov. de 2021 às 21:17, GutembergAdv via lista
>> >> >> PGvl> <lista em firebase.com.br> escreveu:
>> >> >> >>
>> >> >> >> /* Alguém sabe me dizer porque este cast gera dígitos
>> significativos
>> >> no
>> >> >> >> final do número? */
>> >> >> >> /* Neste caso foi o valor 3. Também preciso saber como evitar
>> isso. É
>> >> >> >> necessário ter exatidão no valor */
>> >> >> >> /* Firebird 3 */
>> >> >> >>
>> >> >> >> select
>> >> >> >>  '1485.45' VlrOriginal,
>> >> >> >>  cast('1485.45' as numeric(18,13)) VlrConvertido
>> >> >> >> from rdb$database
>> >> >> >> ______________________________________________
>> >> >> >> FireBase-BR (www.firebase.com.br) - Hospedado em
>> www.locador.com.br
>> >> >> >> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> >> >> http://www.firebase.com.br/fb/artigo.php?id=1107
>> >> >> >> Para consultar mensagens antigas:
>> >> >> http://www.firebase.com.br/pesquisa_lista.html
>> >> >>
>> >> >> PGvl> ______________________________________________
>> >> >> PGvl> FireBase-BR (www.firebase.com.br) - Hospedado em
>> >> www.locador.com.br
>> >> >> PGvl> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> >> >> PGvl> http://www.firebase.com.br/fb/artigo.php?id=1107
>> >> >> PGvl> Para consultar mensagens antigas:
>> >> >> PGvl> http://www.firebase.com.br/pesquisa_lista.html
>> >> >>
>> >> >>
>> >> >> ______________________________________________
>> >> >> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> >> >> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> >> >> http://www.firebase.com.br/fb/artigo.php?id=1107
>> >> >> Para consultar mensagens antigas:
>> >> >> http://www.firebase.com.br/pesquisa_lista.html
>> >> >>
>> >>
>> >>
>> >> ______________________________________________
>> >> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> >> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> >> http://www.firebase.com.br/fb/artigo.php?id=1107
>> >> Para consultar mensagens antigas:
>> >> http://www.firebase.com.br/pesquisa_lista.html
>> >>
>>
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas:
>> http://www.firebase.com.br/pesquisa_lista.html
>>




Mais detalhes sobre a lista de discussão lista