Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Buenas senhores e senhoras.
Qual seria o melhor tipo de campo para armazenar valores monetários(financeiros) em centavo, por exemplo vai ter caso que vou ter que armazenar mais de 20000 reais em centavos.
Para não ter problemas qual tipo de campo devo usar? Double, Float, Decimal sem casas decimais...
Ponto flutuante também é problema com valores muito grandes, apesar de isto ser pouco mencionado por ser menos comum de ocorrer. Se existe alguma chance de você trabalhar com algo em torno de 9 quadrilhões de centavos, pode ter problemas.
Se realmente precisar trabalhar com centavos, sugiro BIGINT.
Geralmente usam-se centavos justamente para evitar problemas com aritmética de ponto flutuante. Usando tipos de ponto fixo você não teria este problema (DECIMAL e NUMERIC):
http://dev.mysql.com/doc/refman/5.0/en/fixed-point-types.html
Se você só vai adicionar centavos pode ser int mesmo
agora se futuramente você também for adicionar reais recomendo decimal