我有以下存储过程(T-SQL),我想在C#代码中使用command.ExecuteReader
来调用它,这样我就可以遍历引发的任何错误 OR 调用它直接来自SQL。
但是,我不知道如何让临时表返回 - 我只是得到一个“0”回来了?
CREATE PROCEDURE validate
AS
BEGIN
DECLARE @ValidationResults TABLE
ROWNUM int,
ATP varchar(max),
ATD varchar(max),
ERROR varchar(max)
)
SET NOCOUNT ON;
INSERT INTO @ValidationResults
SELECT ROWNUM, ATP, ATD, 'ATP must be two characters'
FROM cb with (TABLOCKX)
WHERE LEN(ATP) <> 2
RETURN SELECT * FROM @ValidationResults
END
GO
答案 0 :(得分:0)
不要使用return,只需从@ValidationResults
中选择行。 This article可以帮助您从存储过程中获取数据。
Here是另一篇有用的文章