【发布时间】:2011-01-31 11:30:00
【问题描述】:
我们想在 MySQL 中存储产品价格和重量(公斤/磅)。谁能告诉我最好的方法是什么?
双/十进制/...?
我们需要能够同时显示美元和欧元。 我不知道它是否有帮助,但我们使用 Zend 框架来构建我们的应用程序。
【问题讨论】:
标签: mysql zend-framework currency zend-currency
我们想在 MySQL 中存储产品价格和重量(公斤/磅)。谁能告诉我最好的方法是什么?
双/十进制/...?
我们需要能够同时显示美元和欧元。 我不知道它是否有帮助,但我们使用 Zend 框架来构建我们的应用程序。
【问题讨论】:
标签: mysql zend-framework currency zend-currency
你看过Zend_Currency函数族吗?
此组件适用于所有可用的语言环境,因此了解 100 多种不同的本地化货币。这包括货币名称、缩写、货币符号等信息。
Zend_Currency 的优点是可以重复使用已经定义的货币表示。对于同一种货币,您还可以有 2 种不同的表示形式。
Zend_Currency 还允许您使用货币值进行计算。因此,它为您提供了一个交换服务的接口。
如果您喜欢 Zend 框架的那部分,我猜很多决定会根据它们用于处理这些值的方式“自行解决”。
【讨论】:
货币使用小数
来自http://dev.mysql.com/doc/refman/5.1/en/numeric-types.html: DECIMAL 和 NUMERIC 数据类型用于存储精确的数字数据值。在 MySQL 中,NUMERIC 被实现为 DECIMAL。这些类型用于存储对保持精确精度很重要的值,例如货币数据。
【讨论】:
我们总是使用decimal 并添加一个currency_id 字段来表示货币。
您可以使用id、name 和sign 创建一个货币表,并将其加入到价格查询中。
【讨论】: