首页 | 考研 | MBA | 专升本 | 成考 | 自考 | 高考 | 中考 | 出国 | 外语 | 电脑 | 公务员 | 司法 | 财考 | 资格考试 | 论文写作
 
 淘学考试计算机正文

 

详细介绍两种动态定义游标的方法
编辑:sunl 时间:2007-11-27 来源:淘学考试网 推荐好友

 

方法一:
   不知道多输出参数如何写:

declare @cursor_name varchar(36),@str nvarchar(4000)
select @cursor_name=newid()
DECLARE @ckbm varchar(20)
exec('DECLARE ['+@cursor_name + '] CURSOR FOR select f_ckbm from tbda_ck')
exec('open ['+ @cursor_name+']')
set @str=N'fetch from ['+ @cursor_name +'] into @ckbm'
exec sp_executesql @str,N'@ckbm varchar(20) out',@ckbm out
while @@fetch_status = 0
begin
print @ckbm
exec sp_executesql @str,N'@ckbm varchar(20) out',@ckbm out
end
exec('close ['+ @cursor_name+']')
exec('deallocate ['+ @cursor_name+']')


  方法二:

  可以实现多输出参数

declare @sqlExec varchar(8000),@tableName varchar(255),@myvar varchar(20)
   set @tableName = 'Checkbag_info'
   set @sqlExec = 'declare cursor1 cursor for ' + CHAR(13)
   set @sqlExec = @sqlExec + ' select res_sort from ' + @tableName
   exec(@sqlExec)
   open cursor1
   fetch next from cursor1 into @myvar
   while @@fetch_status = 0
   begin
   print @myvar
   fetch next from cursor1 into @myvar
   end
   close cursor1
   deallocate cursor1

  

 

 

 

 

 

 

 

 

 

 

 相 关 内 容



.

  推荐课程
 
 
 
 
 
 
 最近更新
 综合辅导
 经验技巧
版权信息 - 关于我们 - 联系方式 - 服务承诺 - 客户投诉 - 广告服务 - 网站合作 - 会员服务 - 友情链接 - 站长统计3
1 不良信息
举报中心
文明办网文明上网举报电话:15964542668
举报邮箱:topej@163.com
2 网络110
报警服务
服务热线:15964542668 电子邮件:guoyong@topej.com 服务 QQ:350125289
淘学之家(www.topej.com)旗下网站 ICP注册号:鲁ICP备07016860号