Sql server 真实数据类型,啥是 C# 等价物?

Posted

技术标签:

【中文标题】Sql server 真实数据类型,啥是 C# 等价物?【英文标题】:Sql server real datatype, what is the C# equivalent?Sql server 真实数据类型,什么是 C# 等价物? 【发布时间】:2010-09-12 20:59:24 【问题描述】:

什么是C#相当于sql server 2005 real type?

【问题讨论】:

投了反对票,因为这个答案是完美无缺的,它已经在这里存在了 13 天。 除了投票给社区之外,有没有办法让社区接受废弃问题的答案? 【参考方案1】:

这是单曲

有关 SQL Server 到 .Net 数据类型的更多信息,请参阅 here

【讨论】:

为什么这个答案没有被接受?这不是社区应该工作的方式。太多的问题已经持续了数周而没有被接受的答案。 谁在乎?作者不想打扰,但我们作为社区不需要他们的祝福来看到和影响“最佳”答案。 单曲损失精度。 Double 应该是更合适的候选人。 但是由于精度小问题,我总是使用双倍。没错 Single 是正确的,但我对那种类型有一些问题。 我尝试使用 Single,但 ReSharper 建议使用 float。【参考方案2】:

Single 不是正确答案,因为它会将小数部分四舍五入。例如 2.0799999 将转换为 2.08。如果没有关于舍入的限制,那么它应该是好的。

【讨论】:

【参考方案3】:

Double 可用作 SQL Server 的 Real 数据类型的 .NET 等效数据类型

Double 得到精确的值,没有四舍五入

【讨论】:

.NET 框架中双精度数据类型的正确类型是浮点数,您可能会遇到执行时间异常,就像我现在遇到的那样。 @Leonardo - C# struct 'System.Double' 与内在类型 'double' 相同,而不是您的评论建议的浮动。【参考方案4】:

在我的项目中(acces -> firebird 和 ms sql -> c#)是真正定义为单精度浮点数...所以我使用了浮点数,一切正常

【讨论】:

【参考方案5】:

答案是单身。如果您使用 double 并且您的 SQL 字段是 real 类型,则会出错。我自己测试并确认了这一点。

【讨论】:

C#中的float = Single,它只是一个同义词(如bool和Boolean)【参考方案6】:

它的等价物是 Single。 Single 是 -3.40E +38 到 3.40E +38 范围内的浮点数。

Here is the latest from MSDN describes all SqlDbType and C# Equivalents

【讨论】:

【参考方案7】:

答案是Single float。 (取决于风格。) 这就像Stringstring 之间的区别[来源:ReSharper 代码建议“使用类型关键字”时使用Single。它建议使用float

【讨论】:

以上是关于Sql server 真实数据类型,啥是 C# 等价物?的主要内容,如果未能解决你的问题,请参考以下文章

SQL Server 数据类型的 C# 等效项

sQL server 啥是实例

使用 C# 获取 SQL Server 列的数据类型

C# 和SQL Server 类型转换

SQL SERVER与C#中数据类型的对应关系

SQL SERVER与C#的数据类型对应表