我应该使用哪种数据类型来保存Entity Framework 6中的货币值以及我应该在SQL Server 2012中将其映射到哪种数据类型?
谢谢你, 米格尔
答案 0 :(得分:7)
要获得精确值,请在C#中使用decimal
,在SQL Server中使用decimal(m, n)
。 float
或double
或real
只是不准确,并且容易出现舍入错误 - 我会避免这些错误。
See this other SO question (and its answers)讨论 money与SQL Server中的十进制以及为什么要避免在SQL Server中使用money
。