最好通过UDTT输出参数返回查询结果,还是只是让存储过程“掉线”以返回调用C#应用程序的结果:
CREATE Type MyTableType AS TABLE (
MyID INT NULL
, MyColumn VARCHAR(10));
CREATE PROCEDURE MyProcOUTPUT (
@MyResult MyTableType OUTPUT) AS
BEGIN
INSERT @MyResult (MyID, MyColumn)
SELECT 1, 'The Result';
END
CREATE PROCEDURE MyProc AS
BEGIN
SELECT 1, 'The Result';
END
有任何陷阱吗? 应用程序的性能? 结果集的实际限制?