首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

在存储过程种用EXEC执行一个存储过程,该如何解决

2012-05-30 
在存储过程种用EXEC执行一个存储过程这个存储过程有两个参数。一个是入参,一个是出参入参可以用 select 参

在存储过程种用EXEC执行一个存储过程
这个存储过程有两个参数。一个是入参,一个是出参

入参可以用 select 参数1 from tb1 中 select出来的很多记录么??针对每条记录 EXEC一次。

EXEC sp1 select 参数1 from tb1, 参数2 out

这样??

[解决办法]
这样建议使用FUNCTION来实现。
[解决办法]
看楼主的意思,貌似入参是个表记录,那就用表变量好了:

SQL code
表类型: 创建一个表类型,以后在定义表变量的时候,就可以直接使用该表类型。创建表类型:create type dbo.OrderTotalsByYear as table(    orderyear int not null primary key,    qty int not null)定义一个表变量直接使用表类型:declare @MyOrderTotalsByYear as dbo.OrderTotalsByYearinsert into @MyOrderTotalsByYear (orderyear,qty)select YEAR(a.orderdate) as orderyear,SUM(b.qty) as qty from sales.Orders a inner join sales.OrderDetails b on a.orderid=b.orderid group by YEAR(a.orderdate)select * from @MyOrderTotalsByYearexec 存储过程 @MyOrderTotalsByYear
[解决办法]
还可以用这种方法 在代码里 将数据查询出来 然后遍历那个结果 再拼接成一个sql 语句
拼接成 exec 存储过程 a,b;exec 存储过程 a,b;exec 存储过程 a,b;.....

热点排行