0

我有一个存储过程,我在其中声明了一个十进制变量

@Limit decimal

我从一个 C# 应用程序传递了一个值 200.5,并使用一个普通的、非常基本的插入语句将该值插入到一个表中。该值保存为 201.00,似乎该值由于某种原因被四舍五入。

限制的类型是小数(10,2),知道为什么会发生这种情况。

4

2 回答 2

1

您需要在参数声明中声明精度和小数位数 - 默认为 18,0

 @Limit decimal(10,2)
于 2013-09-11T08:26:26.073 回答
1

在不声明精确精度和比例的情况下,您的@Limit变量默认为 decimal(18,0) 类型。将其声明为declare @Limit decimal(10,2)

于 2013-09-11T08:26:35.200 回答