我有一个存储过程(可能)有类似的东西
SELECT f1, f2, f3
FROM someTable
(更复杂,但复杂性与问题无关)。
该表不是表值输出参数,它只是一个语句。
而且,我无权修改存储过程来创建表值类型参数。
当我运行它时,我希望能够将该输出定向到临时表中。
如果你自己以这种方式编写选择,你会做类似的事情
SELECT f1, f2, f3
INTO #TEMPTABLE
FROM someTable
我的直接猜测是做类似的事情
SELECT *
FROM (EXEC sp_MyStoredProcedure)
但是,这是不正确的。我可以在不创建表值类型的情况下获得我想要的东西吗?
创建临时表后,您可以在临时表中执行存储过程
CREATE TABLE #Temp(SomeID PRMARY KEY, SomeValue INT)
INSERT #Temp EXEC StoredProcedure @ID