SP在执行时以某种方式返回第二个结果集,我不知道为什么。 有人有想法吗?
这是代码
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE SP_CURRENT_USER
AS
BEGIN
SET NOCOUNT ON;
SELECT * FROM Verify where UserName = (CAST(CURRENT_USER AS nvarchar(max)));
END
GO
答案 0 :(得分:2)
使用"Execute Stored Procedure"
调用该过程时,您会看到生成的脚本与此类似:
USE [DBName]
GO
DECLARE @return_value int
EXEC @return_value = [dbo].[SP_CURRENT_USER]
SELECT 'Return Value' = @return_value
GO
您将看到的是来自您的选择查询的result set
和来自存储过程本身的"Return Value"
。在你的情况下,它应该是0,这意味着执行成功终止。
请参阅此文章“Is the sp_ prefix still a no-no?”,了解命名程序"sp_"
时可能遇到的一些问题。