金钱应该使用啥数据类型

Posted

技术标签:

【中文标题】金钱应该使用啥数据类型【英文标题】:What data type should be used with money金钱应该使用什么数据类型 【发布时间】:2011-10-19 14:56:37 【问题描述】:

我正在 mysql Workbench 中创建一个数据库表。我要创建的表是能够保存带有小数点的数字的数据。我要保存的数据是一个货币值,它的小数点为分。我已经创建了一个表,数据类型是十进制。但是,当我检查保存的数据时,四舍五入的数字和消失的分。我想要的是它不会改变任何东西。它仍然会显示确切的值。请帮忙。

【问题讨论】:

【参考方案1】:

我没有使用过 Workbench,所以我不能告诉你具体怎么做,但定义应该是 DECIMAL(M,D) 其中 M 是总位数,D 是总位数到小数点的右边。因此,在您的情况下,您希望 D=2,并根据您的应用选择 M>2。如果 D 设置为 0,它会自动对您的数字进行四舍五入(听起来可能是您的问题)。

除此之外,我想不出它不能正确存储数据的充分理由。

【讨论】:

不错的选择。我经常使用至少 64 位的整数,但这更自然。

以上是关于金钱应该使用啥数据类型的主要内容,如果未能解决你的问题,请参考以下文章

php中金钱数据类型

概率应该使用啥数据类型? [关闭]

如果映射时间戳类型的数据库列,我应该在 C# 中使用啥数据类型? [复制]

Laravel 数据库,我应该使用啥数据类型来存储护照号码?

在这种情况下我应该使用啥正确的数据类型?

Java 中应该使用啥数据类型来代表价格