SQL Real和.NET之间的转换加倍

时间:2014-07-17 09:07:36

标签: c# sql .net

我在T-SQL数据库中有一个由实际值组成的列,但是当我将其转换为double时,我得到的东西与存储的不同。

例如,我选择一行 1.15 存储。当我将其转换为:

Convert.ToDouble(reader["VAT"]);

我明白了:

1,14999997615814

为什么呢?如何将真实转换为双倍并获得相同的值?

1 个答案:

答案 0 :(得分:1)

尝试将列的数据类型从real更改为float。如果您访问此link,您会注意到float SQL Server数据类型映射到DoubleNullable<Double> CLR类型。另一方面,real SQL Server数据类型映射到SingleNullable<Single> CLR类型。我怀疑那是你的问题。