我想从另一个过程执行一个过程,并在临时表中存储过程结果中的特定列而不声明它但是列不知道,并且更改取决于条件。
我尝试过以下代码但不能正常工作
select * into #Temp1 from Exec(Procedure @parameter)
有没有办法做到这一点?
答案 0 :(得分:1)
使用OPENROWSET
将SP的结果插入temp
表
在使用OPENROWSET
之前,您必须配置Ad Hoc Distributed Queries
sp_configure 'Show Advanced Options', 1
GO
RECONFIGURE
GO
sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
GO
SELECT * INTO #Temp
FROM OPENROWSET('SQLNCLI', 'Server=yourservername;Trusted_Connection=yes;',
'EXEC Procedure @parameter')
SELECT * FROM #Temp