0

T-SQL 大师,是什么导致以下过程返回此错误“函数中包含的选择语句无法将数据返回给客户端。”?

create function dbo.func_get_times_for_stop(@stopId as varchar(5))
returns varchar(max) as
begin 
    declare @arrival_times varchar(max)
    set @arrival_times = '';
    declare @arrival_time varchar(5)
    declare arrival_cursor cursor for
        select arrival from schedules where stopid=@stopId;

    open arrival_cursor;
    fetch next from arrival_cursor;
    while @@fetch_status = 0
       begin
          fetch next from arrival_cursor into @arrival_time;    
          set @arrival_times += ',' + @arrival_time;    
       end;
    close arrival_cursor;
    deallocate arrival_cursor;

    return  @arrival_times;
end;

我只是想返回一个标量,其中包含从到达时间连接的字符串。我没有看到我在哪里返回一个选择语句。

4

2 回答 2

3

会不会是这条线?

fetch next from arrival_cursor;

它应该进入@arrival_time.

于 2012-02-26T05:34:54.247 回答
1

这里:

fetch next from arrival_cursor;

你需要

fetch next from arrival_cursor into @arrival_time;
于 2012-02-26T05:37:22.467 回答