[firebase-br] Qual melhor usar Numeric ou Double Precision

Luciano franca luapfirebird em yahoo.com.br
Qua Jul 6 20:20:24 -03 2016


Pessoal estou numa duvida cruel,  antes do FB 3  eu tinha uma rotina que alterava meus Domains pelas tabelas do sistema do Firebird agora com o FB 3 não consigo mais
assim vou ter que deixar fixo no sistema algo como "Numeric(10, 6)"  porque meu sistema permite trabalhar até com 6 casas decimais porem estou tendo problemas com alguns relatórios onde está me dando o erro  "Integer overflow. The result of an integer operation caused the most significant bit of the result to carry."

 Achei esse Link  "http://www.firebirdfaq.org/faq207/"   que me explica o motivo porém vou ter problemas assim estava pensando em trabalhar com "Double Precision" já fiz alguns testes e parece que ele funciona bem,  agora a questão é depois conforme for usando aparecer algum problema no cliente depois ai para voltar terei problemas.
 Pelos meus testes o Tipo Float é bem problemático porem o "Double Precision"  é muito bom.
  Alguns exemplos de valores e resultado nos campos para comparativos
 Valor                          Double Precision                    Float
 "10,000059"               "10,000059"                          "10,0000591278076" 
 "999,199"                   "999,199"                               "999,198974609375"
 "999999999,199"       '999999999,199000001'       "1000000000"        

 Algum colega usa esse tipo de campo Double ?     eu tenho que usar varias casas decimais no meu caso eu Deixo Numeric(10, 6)  porém na configuração do sistema se o cliente colocar 2 casas decimais eu travo no sistema para ele não digitar mais que duas casas decimais e ainda coloco um FormatFloat em todos os relatórios para 2 casas decimais.

  Grato a todos.



Mais detalhes sobre a lista de discussão lista