SET NOCOUNT ON仍然返回受影响的" nn行#34;信息

时间:2014-11-04 17:03:46

标签: sql-server count sql-server-2012 warnings

我有一个简单的存储过程,只需从几个表中选择数据,只有一个输入。我设置存储过程的方式如下:

CREATE PROCEDURE dbo.Proc_Name
(
 @input
)
AS
BEGIN
SET NOCOUNT ON
    BEGIN TRY
    (
      SELECT statements go here
    )
     END TRY

     BEGIN CATCH

     END CATCH
END

尽管打开了SET NOCOUNT,我仍然会受到影响" nn行受影响"我调用存储过程时的消息。

我尝试更改SET NOCOUNT ON的位置,但这也无济于事。

我注意到的另一件事是我的存储过程返回:

Warning: Null value is eliminated by an aggregate or other SET operation.

消息。

此警告是否会抛出SET NOCOUNT ON提示?

2 个答案:

答案 0 :(得分:0)

你的proc的语法不正确。它应该是:

CREATE PROCEDURE dbo.Proc_Name
 @input
AS
BEGIN...

括号在参数周围无效,您需要关键字AS。我会更正这一点,并确保你的proc正在编译。
警告意味着您正在聚合一个可为空的列,即使存在空值也会返回一些值。

答案 1 :(得分:0)

我的坏人。 proc名称与另一个proc名称过于接近。结果我说错了程序,它运行正常。我改变了电话,现在工作正常。谢谢你的时间。