数据库中的最佳货币格式

Dko*_*ong 3 c# sql-server asp.net

与我的ASP.NET Web应用程序一起在我的数据库中使用的最佳货币格式是什么.我不确定浮点数或小数点是否更好.请注意,我不需要特定于文化的设置.

Ale*_*x J 6

如果您使用的是SQL Server,则可以使用"money"类型,该类型在.NET中转换为十进制类型.

十进制是一个128位基数10浮点数,而不是二进制浮点数(浮点数/长数),这使得它在大多数情况下不会失去精度,不像二进制浮点数,它具有精度损失他们设计的一部分.

这是一篇很好的文章,一般解释小数和浮点逻辑.


Noo*_*ilk 5

不要使用浮动.

十进制,规格decimal(17, 4)可能是可以接受的.这意味着左边有'17'个位置,小数点后4位.

  • 作为一个额外的奖励,在左边有17个位置将适应超级超级大型通货膨胀,即津巴布韦式的类固醇.在第二个想法,更好的是让它在左边30,以防万一我们看到一个*超级*超级超级巨型insano-wowie通胀.你永远不知道什么时候会花费$(原子比宇宙中的更多).00! (5认同)
  • 如果OP在做外汇,他需要超过4位小数.货币兑换报价具有更高的精确度. (2认同)