存储过程中调用另一个存储过程的结果集
2006-05-25 10:58
288 查看
在一个存储过程中把另一个存储过程当一个表来使用,在sql server中不支持直接从from后接存储过程。这个时候我们可以利用临时表来实现。
举例:
SELECT ID, RoleId, RoleType into #TempPurviewTableContainer FROM SystemPurview WHERE 1=0
INSERT #TempPurviewTableContainer exec PManage_GetPurview @Type,@Id
select * from #TempPurviewTableContainer
需要注意的是,这种方法不能嵌套。例如:
procedure a
begin
...
insert #table exec b
end
procedure b
begin
...
insert #table exec c
select * from #table
end
procedure c
begin
...
select * from sometable
end
这里a调b的结果集,而b中也有这样的应用b调了c的结果集,这是不允许的,会报“INSERT EXEC 语句不能嵌套”错误。在实际应用中要避免这类应用的发生。如果谁有好的解决方法,请留言!
举例:
SELECT ID, RoleId, RoleType into #TempPurviewTableContainer FROM SystemPurview WHERE 1=0
INSERT #TempPurviewTableContainer exec PManage_GetPurview @Type,@Id
select * from #TempPurviewTableContainer
需要注意的是,这种方法不能嵌套。例如:
procedure a
begin
...
insert #table exec b
end
procedure b
begin
...
insert #table exec c
select * from #table
end
procedure c
begin
...
select * from sometable
end
这里a调b的结果集,而b中也有这样的应用b调了c的结果集,这是不允许的,会报“INSERT EXEC 语句不能嵌套”错误。在实际应用中要避免这类应用的发生。如果谁有好的解决方法,请留言!
相关文章推荐
- 存储过程中调用另一个存储过程的结果集
- mybatis 调用 oracle 返回结果集 存储过程
- Java调用SqlServer中的存储过程出现结果集为空的情况
- Spring 调用ORACLE存储过程的结果集
- 熬了个通宵,终于把在ASP里调用存储过程不返回结果集的问题解决了。
- 将存储过程中返回的结果集在另一个存储过程中保存到临时表
- jdbc 调用 sql server 的存储过程时“该语句没有返回结果集”的解决方法
- 如何在存储过程中,调用另一存储过程的结果集
- 分享:在存储过程中使用另一个存储过程返回的查询结果集的方法
- ThinkPHP调用存储过程不能返回结果集的解决方案
- Oracle存储过程中执行查询返回的结果集,并使用java代码调用【转】
- ThinkPHP调用存储过程不能返回结果集的解决方案
- SQL 存储过程里调用另一个存储过程
- Oracle 存储过程调用返回游标的另一个存储过程。
- ThinkPHP调用存储过程不能返回结果集的解决方案
- JAVA调用sqlserver存储过程的实现(返回多个结果集的实现)
- jdbc调用存储过程获取多个结果集
- sql中用存储过程调用另一个存储过程
- oracle 在一个存储过程中调用另一个返回游标的存储过程
- jdbc调用存储过程获取多个结果集