易截截图软件、单文件、免安装、纯绿色、仅160KB

sqlserver 自定义函数return 问题

SQL code:
create function subDepartment(@id varchar(36),@flag int)
returns @re table(subid varchar(36))
as
begin
insert @re select deli_id from departmentlink where deli_type=32
and deli_id =@id
if @flag=0
return
while @@rowcount>0
begin
insert @re
select a.deli_id from departmentlink a ,@re b

where a.deli_type=32 and a.deli_depa_id =b.subid
and a.deli_id not in (select subid from @re)
end
return
end


函数的作用是创建找出一个单位的所有下级单位或者就找出本单位。
第一个参数表示,上级ID,根据他找出他下面的所有下级ID,
第二个参数表示,是一个标记,如果是0就表示只返回本身,如果是非0 就执行找下级的代码。。

但是不管我是
select * from subDepartment('56B4217998F243BA8EF2ABC456C8D3A1',0)
select * from subDepartment('56B4217998F243BA8EF2ABC456C8D3A1',999)
返回的结果都是一条数据。。也就表示不管flag变量是,0 还是999都@flag=0都是真。。。。高手帮忙啊


你的WHERE的终止条件呢?每次循环都没变化吧

我以前写的一个小例子,发上来供你参考
SQL code:
if not object_id('tb') is null drop table tb
IF OBJECT_ID('FUN_MU


相关问答:

ado访问远程数据库(远程访问sqlserver)

是这样的,我用是ODBC数据源连接服务器的数据库,现在我觉得很麻烦,因为要为每如机添加对应的数据源,想把他改成ADO方法来访问服务器的数据库能实现吗?要怎么写。
比如服务器里有二个数据库data1 和data2,客户 ......

如何创建临时Sqlserver数据库???

如题 备份数据使用,如何创建临时数据库,可以将正在使用的数据库中的某些表在临时表中。导入相应数据。给个思路。
谢谢
SQL SERVER 安装后在开始菜单里有备份的源代码

临时表用
#XXX  XXX名字自己取 ......

【求教】SQLServer创建不了新用户

数据库是安装VS2005自带的那个SQLServer2005。图形管理工具是—>SQL Server Management Studio Express。

我先是用Windows身份验证模式进去。 点—>"安全性" 然后右键"登录名 ......

求解决方案(SQLSERVER)中存储过程

现在有一张部门表(SYS_DEPT)结构如下:
DEPT_ID(部门ID)    DEPT_NAME(部门名称)    DEPT_PARENT_ID(部门父节点名称)

要实现的内容为:
根据上面这张部门表中的任意一个DEPT_ID(部 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号