十进制T-SQL到十进制C#

时间:2016-07-07 10:20:14

标签: c# sql-server tsql decimal

在C#中将T-SQL decimal(30,8)转换为decimal是否有可能出现问题?

1 个答案:

答案 0 :(得分:5)

您无法使用decimal(30,8)类型的.NET表示System.Decimal的所有可能值。

decimal(30,8)有30位有效数字,System.Decimal根据the documentation有28-29位。

例如1234567890123456789012.12345678decimal(30,8)的有效值,但在C#中编写1234567890123456789012.12345678m会返回1234567890123456789012.1234568,四舍五入并丢失一个数字。