我在SQL里面写好的存储过程执行的结果也是正确的,但是为什么在VS里面调用的时候就没有结果了?

2025-01-05 12:48:35
推荐回答(3个)
回答1:

null value is eliminated by an aggregate or other SET operation
是说有null值被忽略了

SET NOCOUNT ON 的作用是比如我们执行个update,会返回多少行被修改,设置这个以后,就不返回这个信息了。这是减少存储过程不必要的开销的方式

所以目前的状况原因肯定不是SET NOCOUNT ON的问题

回答2:

看你set nocount on 的位置对不对,一般是在出数据的地方前面就把这个off掉,然后最后再on

还有,你看看你的isNull这个开关是开还是关,它会影响isnull这个函数对于null的判断

回答3:

聚合函数会忽略NULL值,这是系统的警告,可以通过SET ANSI_WARNINGS OFF来关闭警告信息