欢迎光临
我们一直在努力

SQLServer2005数据库游标调用函数的使用方法

这篇文章主要讲解了“SQLServer2005数据库游标调用函数的使用方法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SQLServer2005数据库游标调用函数的使用方法”吧!

  1、建立基表

  createtableplanwork(planidint,empidint)insertintoplanworkvalues(1,100)insertintoplanworkvalues(2,200)insertintoplanworkvalues(3,300)insertintoplanworkvalues(4,400)insertintoplanworkvalues(5,500)insertintoplanworkvalues(6,600)insertintoplanworkvalues(7,700)insertintoplanworkvalues(8,800)select*fomplanwork

  2、建立函数

  dropfunctionfindworkplancreatefunctionfindworkplan(@numint)returnsintasbegindeclare@eidintset@eid=(selectempidfromplanworkwhereplanid=@num)return@eid;end;

  3、测试函数

  selectdbo.findworkplan(3)

  SQLServer2005数据库游标调用函数怎么使用

  4、利用游标调用函数

  4.1、创建一个表,利用这个表里面的数值得到workplan表里面对应的empno

  createtablexb_test1(xidint)insertintoxb_test1values(1)insertintoxb_test1values(2)insertintoxb_test1values(3)insertintoxb_test1values(4)insertintoxb_test1values(5)insertintoxb_test1values(6)insertintoxb_test1values(7)insertintoxb_test1values(8)select*fromxb_test1

  4.2、只能用循环遍历xb_test1表分别找出对应表workplan的empno,考虑到需遍历整个xb_test1表,所以决定用游标,不知道用oracle的with函数怎么样?该WHILE结构测试用于游标的函数@@FETCH_STATUS的返回值。因为@@FETCH_STATUS可能返回–2、-1或0,所以,所有的情况都应进行测试。假如某一行在开始执行此存储过程以后从游标结果中删除,将跳过该行。成功提取(0)后将执行BEGIN…END循环内部的SELECT语句。

  declareempno_cursorcursorforselectxidfromxb_test1openempno_cursordeclare@aint,@resultintfetchnextfromempno_cursorinto@awhile(@@fetch_status<>-1)beginif(@@fetch_status<>-2)begin–print@aset@result=(selectdbo.findworkplan(@a))print@resultendfetchnextfromempno_cursorinto@aendcloseempno_cursordeallocateempno_cursor。

感谢各位的阅读,以上就是“SQLServer2005数据库游标调用函数的使用方法”的内容了,经过本文的学习后,相信大家对SQLServer2005数据库游标调用函数的使用方法这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是云搜网,小编将为大家推送更多相关知识点的文章,欢迎关注!

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。