正在构建一个允许用户以不同货币格式输入值的应用程序。
我最初的想法是以下列格式保存数据。
这个设计是个好主意还是应该用于金额字段,整数,小数或浮点类型?
我不确定不同格式的格式会如何影响存储。
答案 0 :(得分:3)
我的投票将是:
DECIMAL(18,4)
- >你当然可以根据你的需要改变大小。我不知道我的货币是否足以告诉你你需要多少小数位,所以我决定选择4.我知道至少存在3个(参见Various country's "currency decimal places width" in the iPhone-SDK)为何选择FK参考和货币表?然后,您可以存储更多信息以及每种货币(例如相关的文化或格式信息),并在必要时附加一个包含汇率的表格,这样您就可以将所有内容添加到一种基本货币中。
此外,这些天存储很便宜。
注意:
我不会使用字符串表示金额,因为您无法添加它们而且您无法按顺序排序(很容易)。你也失去了内在的验证,即金额确实是一个数字。
我也不会使用浮动金额,因为货币金额应该是准确的。您不希望对每个结果进行舍入以显示它;如果你在错误的方向上走了一分钱怎么办?
答案 1 :(得分:1)
我选择DECIMAL,但这可能取决于"金额"的应用。