灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2251回复:0

[SQL Server]存储过程A里,将存储过程B的结果集存到A的临时表或者表变量里

楼主#
更多 发布于:2013-05-25 15:04
存储过程A里,将存储过程B的结果集存到A的临时表或者表变量里
 
CREATE TABLE test1
(
  a VARCHAR(20)
)
GO
CREATE TABLE test2
(
  a VARCHAR(20)
)
GO
 
 
INSERT INTO test1 VALUES('aaa')
GO
 
 
CREATE PROCEDURE sp_test
AS
SELECT * FROM test1
GO
 
 
EXEC sp_test
GO
 
 
INSERT INTO test2 EXEC('EXEC SP_TEST');
GO
 
 
SELECT * FROM test2
GO
 
sp_configure 'Show Advanced Options', 1
GO
RECONFIGURE
GO
sp_configure 'Ad Hoc Distributed Queries', 1
GO
RECONFIGURE
 
 
alter procedure sp_test2 as
SELECT *  
 
 
INTO #MyTable  --( can be either a temp table or perm table,不用事先知道其Schema,这正是你想要的)
 
 
FROM OPENROWSET('SQLNCLI', 'server=.;trusted_connection=yes',  
 
 
'exec IPSUNU9DB_20130425.dbo.SP_TEST')
select * from #MyTable
 
exec sp_test2

喜欢0 评分0
游客

返回顶部