【发布时间】:2017-10-02 22:04:35
【问题描述】:
我正在编写一个存储过程,它通过使用临时表来使用另一个存储过程的结果。内部存储过程usp_i 在数据库A 中,外部存储过程usp_o 在数据库B 中。所有数据库都在同一台服务器上。
在usp_i的末尾,我把它的结果放到#tmpResult表中:
use A
go
select * into #tmpResult from SomeTable
现在在来电者usp_o,我有
use B
go
exec A.dbo.usp_i
select * from #tmpResult
select * from tmpdb..#tmpResult
两种方法都出错了
无效的对象名称#tmpResult
如何获取临时表?
【问题讨论】:
-
您是否尝试访问外部存储过程中的内部存储过程返回的结果?还是你想在外部过程中使用在内部过程中创建的临时表?
-
@Murthy 最终我想使用内部过程返回的结果。我认为最简单的是
insert into ... exec,但是 sql server 有一些嵌套问题
标签: sql-server stored-procedures