--自定义函数--
alter FUNCTION GET_EMPLOYEEZZINFO(
@eid varchar(50)
)
returns varchar(500)
as
begin
declare @emplyee_zz nvarchar (500),@n nvarchar(100)
declare mycursor Cursor for (select zname from dbo.Employee_zz WHERE eid=@eid)
open mycursor
fetch next from mycursor into @n; -- ( www.yangsheng52.com)--
while @@FETCH_STATUS=0
begin
set @emplyee_zz=(@emplyee_zz+','+@n)
fetch next from mycursor into @n;
end
close mycursor
deallocate mycursor
return @emplyee_zz
end
go
上面函数总是返回null,我找了半天才发现,雨来是没有给@emplyee_zz变量初始化导致的。在定义完变量后加set @emplyee_zz=‘ ’ 就可以了。我这个问题找了半天,希望能帮助遇到问题的朋友们。
本文介绍了一个SQL自定义函数返回空值的问题及其解决方法。该函数用于获取员工的职称信息,通过遍历游标并将结果拼接成字符串返回。问题在于未初始化返回变量导致始终返回null。
1616

被折叠的 条评论
为什么被折叠?



