存储过程到公用表表达式解决方法?

时间:2013-11-21 16:30:12

标签: sql sql-server common-table-expression

我需要在存储过程的输出周围包装一个公用表表达式,显然无法直接从CTE中调用存储过程,所以我试图找到一个解决方法。

我尝试使用SELECT FROM OPENROWSET,最初看起来解决了问题 - 但是我需要调用的一些存储过程包含sp_executesql命令,因此会生成错误 -

  

无法确定元数据,因为过程'sp_CustomerAndWorkers'中的语句'EXEC sp_executesql @SQL'包含动态SQL。请考虑使用WITH RESULT SETS子句显式描述结果集。“

我也查看了OPENQUERY,但这不允许包含参数。

我还有其他可以考虑的方法吗?将是可能的

提前致谢。

1 个答案:

答案 0 :(得分:0)

您是否考虑过临时表?

示例:

INSERT INTO #tempTable
EXEC sp_executesql