你定义一个变量输出试试,每次将有标志服给这个变量

解决方案 »

  1.   

    drop procedure jobs_cursor
    go
    /*接着创建存储过程jobs_cursor*/
    create procedure jobs_cursor @jobs_cursor cursor varying output
    as
    /* 给游标变量赋值*/
    set @jobs_cursor = cursor
    forward_only static for
    select *
    from jobs
    /* 打开游标*/
    open @jobs_cursor
    go
    use pubs
    go
    declare @mycursor cursor
    declare @job_id int
    declare @job_desc varchar(255)
    declare @min_lvl int
    declare @max_lvl int
    exec jobs_cursor @jobs_cursor = @mycursor output
    while (@@fetch_status = 0)
    begin
    fetch next from @mycursor into @job_id, @job_desc, @min_lvl, @max_lvl
    print @job_id
    end
    /* 关闭游标*/
    close @mycursor
    deallocate @mycursor
    go
    try it:)