我有一个存储过程,我声明了一个十进制变量
@Limit decimal
我从C#应用程序传递值200.5,并将此值与普通的,非常基本的插入语句一起插入表中。该值保存为201.00,似乎值由于某种原因被四舍五入。
限制的类型是十进制(10,2),任何想法都会发生这种情况。
答案 0 :(得分:1)
您需要在参数声明中声明精度和比例 - 默认值为18,0
@Limit decimal(10,2)
答案 1 :(得分:1)
默认情况下,如果没有声明精确的精度和比例,则@Limit
变量具有十进制(18,0)类型。
将其声明为declare @Limit decimal(10,2)
。