我需要一个存储过程的输出存储在#table
的问题是我的程序的输出是70场的表
因此,存储在输出之前,我不能创建#table的程序
,因为它需要很大的努力。
我需要类似select * into #table from Table_Name
巫解决方案自动创建#table将存储过程的输出
将存储过程的输出
回答
我发现在以下链接解决方案:
http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=85347 因此,存储存储过程的输出,我们需要使用OPENROWSET()
功能
但在使用它之前,我们必须enable show advanced options
和
Ad Hoc Distributed Queries
这里解决方案:
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'Ad Hoc Distributed Queries', 1
RECONFIGURE
GO
Select * into #temp
from OPENROWSET('SQLOLEDB','Data Source=Myserver;Trusted_Connection=yes;Integrated Security=SSPI', 'Execute DB_Name..Prc')
并为各个参数,我可以将其添加为字符串丝毫过程revoke语句来
'Execute DB_Name..Prc'
+ CAST(parameter1 AS varchar(50)) + .....
+ CAST(parameter(n) AS varchar(50))
存储过程必须使用一些select * from ..
语句里面产生这种输出。你可以修改它,对吧?
是的,但这个过程需要一些参数 所以,输出是不同的,每次我使用proc – Alaa 2011-04-09 07:46:30
我想你想要OPENROWSET。退房:http://msdn.microsoft.com/en-us/library/ms190312.aspx
请注意这些示例尚未经过测试。
--Example for master.dbo.sp_who
SELECT * INTO #TempSpWho
FROM OPENROWSET ('SQLOLEDB','Server=(local);
TRUSTED_CONNECTION=YES;',
'set fmtonly off exec master.dbo.sp_who')
此外,如果你有参数的SP,您将需要编写动态SQL:
DECLARE @testVariable varchar(10);
SET @testVariable = 'varTest';
EXEC('SELECT * INTO #TempSpWho
FROM
OPENROWSET(
''SQLNCLI'',
''Database=dbIDsAndNames;Uid=sa;Pwd=nosecurity;'',
''SET FMTONLY OFF
EXEC [dbo].[mySproc] ''' + @testVariable + ''')')
来源:http://www.dotnetspider.com/forum/163990-Working-with-Openrowset.aspx
注意:上面的例子都不是我最初创建的,所以信用就是这样o如果你的工作来源。
如果手动建立临时表(即在所有70个行不感兴趣。),这将是方法:
CREATE TABLE #foo(
[bar] int,
baz varchar(123)
)
insert into #foo exec spDoSomething
select * from #foo
drop table #foo
没问题;很高兴你明白了。 – Gibron 2011-04-09 16:55:11
- 1. 输出的存储过程
- 2. 如何将存储过程的输出存储到磁盘上
- 3. 存储过程不给出输出
- 4. MySQL的存储过程:输出参数
- 5. 存储过程的输出参数
- 6. 调用带输出的存储过程
- 7. INSERT INTO的输出存储过程
- 8. PHP返回存储过程的输出
- 9. 将存储过程输出参数转储到DataGridView行中
- 10. 将存储过程输出保存到表中
- 11. 如何将存储过程输出导出到文本文件
- 12. 使用存储过程输出参数
- 13. 执行存储过程输出脚本
- 14. 多个存储过程输出
- 15. PHP + Oracle存储过程(多输出)
- 16. ADO.Net和存储过程输出参数
- 17. 德尔福存储过程输出
- 18. 从存储过程输出中选择
- 19. 存储过程输出参数asp.net c#
- 20. 存储过程 - 输出临时表
- 21. 存储过程输出参数
- 22. 存储过程及其输出
- 23. 存储过程输出值到变量
- 24. Azure存储过程输出值
- 25. 手柄存储过程输出
- 26. 存储过程不输出结果
- 27. 存储过程输出变量
- 28. openRoad存储过程输出参数
- 29. 存储过程执行时无输出
- 30. SQL Server存储过程 - 输出参数
不要怕我的朋友,我们得到的答案 – Alaa 2011-04-09 08:57:19
或许这能够帮助http://stackoverflow.com/questions/3829201/sql-select-print-out-results-of-stored-procedue – adopilot 2011-04-09 17:04:23