我在报表(主从报表)要用到存储过程,比如主表select mainid , from maintbl
从表是存储过程 比如 create sp_test @mainid integer as select mainid ,subid from subtbl where mainid=@mainid 当然实际上从表的存储过程是比较复杂的,我想知道如何把主表的mainid作为参数传递到从表的存储过程中,谢谢了
...全文
20210打赏收藏
delphi存储过程的一个问题
我在报表(主从报表)要用到存储过程,比如主表select mainid , from maintbl 从表是存储过程 比如 create sp_test @mainid integer as select mainid ,subid from subtbl where mainid=@mainid 当然实际上从表的存储过程是比较复杂的,我想知道如何把主表的mainid作为参数传递到从表的存储过程中,谢谢了
直接用存贮过程!
CREATE PROCEDURE usp_test AS
declare @mainid char(20)
declare @count int
create table #temp1(id int,num int)
insert into #temp1
select mainid from maintbl
declare read_userid cursor for select mainid ,subid from subtbl
select @count=count(id) from subtbl
if @count>0
begin
open read_userid
----------------------------------------------------------------------------------------------------------------------------while begin
while @count>0
begin
fetch next from read_userid into @mainid
--读取数量金额表
if exists( select * from subtbl where id=@mainid )
begin
--希望地操作
end
set @count=@count-1
end
---------------------------------------------------------------------------------------------------------------------------while end
commit transaction
end
deallocate read_userid
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------定义游标end