繁体   English   中英

具有输出/输入参数返回计数的存储过程

[英]Stored procedure with output / input parameters return count

我想获取存储过程返回的值。 我在SQL中执行,一切正常,但是从C#调用时,我得到0。

CREATE PROCEDURE [dbo].[USerFilter_SP_MatchUserFilter](
@User varchar(50), 
@Car varchar(50), 
@Part varchar(50), 
@State varchar(50), 
@Year varchar(50) )
AS 
Begin
SELECT COUNT(*)
FROM
(

    /* Statement here request row count */

)X
End

尝试将NOCOUNT设置为:

https://msdn.microsoft.com/zh-CN/library/ms189837.aspx

我认为您会看到发生的是SSMS中的“消息”窗口,您正在获取内部查询的行计数返回。 这可能会使C#变得有点笨拙。 SET NOCOUNT ON禁止这样做,因此您只返回好东西:

CREATE PROCEDURE [dbo].[USerFilter_SP_MatchUserFilter](
  @User varchar(50), 
  @Car varchar(50), 
  @Part varchar(50), 
  @State varchar(50), 
  @Year varchar(50) )
AS 
Begin

   -- SET NOCOUNT ON added to prevent extra result sets from
   -- interfering with SELECT statements.
   SET NOCOUNT ON;

   SELECT COUNT(*)
   FROM
   (
       /* Statement here request row count */
   )X
End

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM