Sql server SQL Server 2008:从存储过程中将*选择到TMP中
我希望做以下工作:Sql server SQL Server 2008:从存储过程中将*选择到TMP中,sql-server,tsql,Sql Server,Tsql,我希望做以下工作: select * into tmptbl from sometable 除了“sometable”是一个返回结果集的存储过程之外,编辑存储过程以满足我的目标不是一个选项。此外,我可能知道也可能不知道过程返回的列和类型 基本上,我正在寻找一种合适的方法: 从exec someSP选择*进入tmptbl 这是否可能,如果可能,如何实现?是的,这样的环回查询是可能的 SELECT * INTO #tmptbl FROM OPENROWSET ('SQLOLEDB','S
select * into tmptbl from sometable
除了“sometable”是一个返回结果集的存储过程之外,编辑存储过程以满足我的目标不是一个选项。此外,我可能知道也可能不知道过程返回的列和类型
基本上,我正在寻找一种合适的方法:
从exec someSP选择*进入tmptbl
这是否可能,如果可能,如何实现?是的,这样的环回查询是可能的
SELECT * INTO #tmptbl
FROM OPENROWSET ('SQLOLEDB','Server=(local);TRUSTED_CONNECTION=YES;'
,'set fmtonly off exec DatabaseName.dbo.someSP')
更多示例如下:
请注意,必须首先打开此选项,请参见此处:是的,这样的环回查询是可能的
SELECT * INTO #tmptbl
FROM OPENROWSET ('SQLOLEDB','Server=(local);TRUSTED_CONNECTION=YES;'
,'set fmtonly off exec DatabaseName.dbo.someSP')
更多示例如下:
请注意,必须首先打开此功能,请参见此处:那么您要将存储过程的结果转换为临时表?是的,这就是我希望实现的。那么您要将存储过程的结果转换为临时表?是的,这就是我希望实现的。我刚刚写了同样的东西。这并不漂亮,但它可以工作。不好,“临时分布式查询”没有启用,我不是管理员。这是我知道这项工作的唯一方式,但这必须首先在默认安装上完成:exec sp_configure“show advanced options”,1;重新配置;exec sp_配置“临时分布式查询”,1;重新配置;去很难看,但很管用,谢谢:)是的,你看,我也在写同样的东西。这并不漂亮,但它可以工作。不好,“临时分布式查询”没有启用,我不是管理员。这是我知道这项工作的唯一方式,但这必须首先在默认安装上完成:exec sp_configure“show advanced options”,1;重新配置;exec sp_配置“临时分布式查询”,1;重新配置;去难看,但它的工作,谢谢:)是的,也看到这里