首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

在C#或vb.net中,如何递归调用一个存储过程(存储过程退回下级ID)

2013-03-04 
在C#或vb.net中,怎么递归调用一个存储过程(存储过程退回上级ID)数据表结构如下:会员ID上一级ID会员金额101

在C#或vb.net中,怎么递归调用一个存储过程(存储过程退回上级ID)
数据表结构如下:

会员ID  上一级ID     会员金额
1        0          100
2        1          50
3        2          20



--存储过程大致如下:
ALTER PROCEDURE [dbo].[SP_USERS]
@会员id int
AS
SELECT convert(varchar(10),上一级ID) + '|' + convert(varchar(10),会员金额) FROM TB WHERE 会员ID=@会员id


问题:

我在程序中想现实:

exec SP_USERS @会员id= 上级ID


在C#或VB.NET程序中,怎么循环执行这个存储过程,上级返回0才退出这个循环。
[解决办法]
调用存储过程你会吧
private int GetParentID(int id)
{
    int pid=调用存储过程函数(id);
    if(pid==0)
       return 0;
    else
       return GetParentID(pid);
}

private int 调用存储过程函数(int id)
{
    //这里调用存储过程,返回id的上一ID
}

热点排行