我需要在数据库中存储几个与钱相关的字段,但我不确定在money和decimal之间使用哪种数据类型.
十进制和金钱应该是非常可靠的.我可以向你保证(从继承应用程序的痛苦个人经验)是不要使用浮动!
我总是使用十进制; 从来没有用过MONEY.
最近,我在Sql server中发现了一篇关于十进制与货币数据类型的文章,你可能会觉得有趣:
金钱与十进制
当您使用它执行计算时,money数据类型似乎并不总能产生准确的结果:单击
我过去所做的是使用INT字段,并以美分(欧元/美元)存储金额.
我想这归结为精度和规模.IIRC,money
是4dp.如果没问题,money
表达你的意图.如果您想要更多控制,请使用decimal
特定的精度和比例.