从数据类型 varchar 转换为 numeric 时出错

这个错误非常的简单,就是类型转换的问题,但是却让我忙活了好长时间。

 因为我调用的存储过程,所以没办法知道时那个具体的字段报的错误,所以我直接写个方法把所有的字段给转换了,

奇怪的时转换之后还是报错,这让我非常的郁闷了,看字段表字段类型,看参数类型,各种方法都试过了,还是没解决,只能求助大佬了,

最后发现竟然是别人写的存储过程中的问题,

drop PROCEDURE PR_Sum
go
CREATE  PROCEDURE PR_Sum 
    @a numeric(10,2), 
    @b numeric(10,2), 
    @sum int output
AS
BEGIN
if @a != ''
 set @sum=@a+@b 
    return @sum
END
  declare  @sum1 int
  execute  PR_Sum 1,2 ,@sum1 output 
  print @sum1
 @a != '' 
@a 不能与' '比较

忙活了半天竟然是这里的错。

郁闷了

原文地址:https://www.cnblogs.com/iowoi/p/12837985.html