我有以下SP:
ALTER PROCEDURE [dbo].[UpdateOwnerSelectedSkinId]
(
@emailAddress VARCHAR(100),
@skinId int,
@ownerSkinGroup VARCHAR(100)
)
AS
BEGIN
SET NOCOUNT ON;
Update dbo.Owner
SET
SkinId = @skinId, OwnerSkinGroup = @ownerSkinGroup
WHERE
EmailAddress = @emailAddress
END
目前,如果我使用有效或无效的电子邮件进行呼叫,则SP返回的值始终为0。如何确定更新是否有效。
答案 0 :(得分:1)
如果“成功”表示已更新任何记录,则可以设置SET NOCOUNT OFF
,受影响的行数将返回给客户端。
在您的注释中,您说您使用SqlCommand.ExecuteReader
,但是您的SP不返回任何结果集。相反,您应该使用SqlCommand.ExecuteNonQuery
来返回受影响的行数。