我需要在存储过程的输出周围包装一个公用表表达式,显然无法直接从CTE中调用存储过程,所以我试图找到一个解决方法。
我尝试使用SELECT FROM OPENROWSET
,最初看起来解决了问题 - 但是我需要调用的一些存储过程包含sp_executesql
命令,因此会生成错误 -
无法确定元数据,因为过程'sp_CustomerAndWorkers'中的语句'EXEC sp_executesql @SQL'包含动态SQL。请考虑使用WITH RESULT SETS子句显式描述结果集。“
我也查看了OPENQUERY
,但这不允许包含参数。
我还有其他可以考虑的方法吗?将是可能的
提前致谢。
答案 0 :(得分:0)
您是否考虑过临时表?
示例:
INSERT INTO #tempTable
EXEC sp_executesql