[firebase-br] Numeric e Decimal ... lá vamos nós mais um vez....
Murilo Garcia Bento
murilo em cprinformatica.com.br
Seg Jan 19 23:26:27 -03 2009
Sei que é um assunto que já foi bastante discutido e inclusive existem
matérias no site do Firebase, mas gostaria de respostas vinda de
experiências de outras pessoas, lendo algumas coisa pela net, dentre artigos
e comentários, notei que muito recomendam a utilização de campos Numeric(x,
y) ao Double Precision ou Decimal.
Bem sempre usei Double Precision, e a única vez que tive problemas foi uma
falha de projeção onde aparece uma variável Float numa procedure e danou
todo o cálculo (arredondamento, não me pergunte detalhes, simplesmente
troquei por Double Precision e ficou 100% - deveria ser a precisão ou algo
do tipo).
A minha dúvida agora é o seguinte, estou para começar a projetar um
"sisteminha" (que pode se tornar algo maior - espero isso claro, por isso
quero tomar cuidado no planejamento), e acredito que poderei lidar com
valores altos - mais de 100.000 - mas também terá valor muito pequenos, a
principio com 4 ou 5 casas decimais, mas já estou pensando em trabalhar com
6 para evitar problemas. Dai vem o X da questão, se terei valor maiores a
100K, com certeza contas e totalizadores darão valore altos, mas também
tratarei de números muito pequenos.
Neste tipo de caso, seria mais aconselhável um Numeric(16,6) por exemplo ou
um Decimal(15,6) ou um Double Precision?
Me refiro principalmente a questão de armazenamento, mas também já estou
preocupado com o arredondamento, pois sei a dor de cabeça que isso dá na
programação.
Desde já sou grato. Só reforçando, já li bastante a respeito, mas agora
gostaria de saber quem já passou por coisas como isso na prática, quais
dificuldades teve, o que fez para resolver e principalmente a opinião sobre
que tipo realmente vale a pena na prática em um caso como este.
Ps. Só para deixar bem claro, o sistema a principio será totalmente
direcionado para os valores mais baixos, porém no mesmo existirá uma parte
voltada a outros ramos que podem ter valores bem grandes.
Grato a todos e um grande abraço.
Mais detalhes sobre a lista de discussão lista