游标实例

简介:

定义

游标(cursor)是系统为用户开设的一个数据缓冲区,存放SQL语句的执行结果。每个游标区都有一个名字。用户可以用SQL语句逐一从游标中获取记录,并赋给主变量,交由主语言进一步处理。

 

实例

 
  1. DECLARE STU_CUR1 CURSOR 
  2. FOR 
  3. SELECT * FROM STUDENT  
  4.  
  5.  
  6. DECLARE STU_CUR SCROLL CURSOR 
  7. FOR 
  8. SELECT SNO,SNAME,SAGE,SGENTLE,SDEPT  
  9. FROM STUDENT  
  10. WHERE SDEPT='计算机' 
  11. ORDER BY SNO DESC 
  12. --FOR READ ONLY  
  13.  
  14. deallocate stu_cur--删除游标  
  15. SET STATISTICS IO ON 
  16. set cursor_close_on_commit off--可以用set cursor_close_on_commit off 来保持游标是一直打开的,除非你手动关闭  
  17. OPEN STU_CUR  
  18. SET NOCOUNT ON 
  19. FETCH NEXT FROM STU_CUR--提取下一条数据,如果是第一次提取数据,提取出来的是第一条数据  
  20. WHILE @@FETCH_STATUS=0  
  21. BEGIN 
  22. FETCH NEXT FROM STU_CUR  
  23. --FETCH ABSOLUTE 2 FROM STU_CUR--提取数据中的第二行  
  24. END 
  25. --FETCH PRIOR FROM STU_CUR--提取前一条数据  
  26. --FETCH FIRST FROM STU_CUR--提取第一条数据  
  27. --FETCH LAST FROM STU_CUR--提取最后一条数据  
  28.  
  29. --不管是更新还是删除它们所用到的数据都是从FETCH中得到的所以它们前面必须要有FETCH语句  
  30. --使用游标更新数据  
  31. UPDATE STUDENT SET SAGE=20 WHERE CURRENT OF STU_CUR  
  32. --使用游标删除数据  
  33. DELETE FROM STUDENT WHERE CURRENT OF STU_CUR  
  34. CLOSE STU_CUR  
  35. select * from STUDENT  
  36. SELECT * FROM TEMPDB  
  37.  
  38. --将游标变量与游标关联起来  
  39. DECLARE @SC CURSOR 
  40. SET @SC = CURSOR 
  41. FOR SELECT * FROM STUDENT 

 本文转自sucre03 51CTO博客,原文链接:http://blog.51cto.com/sucre/420262,如需转载请自行联系原作者

相关文章
|
JavaScript 前端开发
JavaScript实现11位手机号码正则表达式
JavaScript实现11位手机号码正则表达式
513 0
|
编解码
LabVIEW条形码识别(实战篇—5)
LabVIEW条形码识别(实战篇—5)
LabVIEW条形码识别(实战篇—5)
|
存储 分布式计算 负载均衡
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
【大数据技术Hadoop+Spark】MapReduce概要、思想、编程模型组件、工作原理详解(超详细)
944 0
|
8月前
|
Ubuntu Linux
Ubuntu中dpkg和apt命令:debian包安装详解
希望这让你对于Ubuntu中的dpkg和apt命令有了更为清晰的理解。下次你面对软件包安装的问题,就可以轻松应对,优雅地在你的Linux系统中游刃有余了。
772 10
|
12月前
|
数据可视化 项目管理
提升团队沟通协作:ORID聚焦式会话法应用技巧
ORID(Objective, Reflective, Interpretive, Decisional)是一种结构化的讨论方法,能帮助团队成员全面了解问题,在讨论中达成共识,并做出高效决策。
483 5
提升团队沟通协作:ORID聚焦式会话法应用技巧
|
机器学习/深度学习 算法 UED
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法
在数据驱动时代,A/B 测试成为评估机器学习项目不同方案效果的重要方法。本文介绍 A/B 测试的基本概念、步骤及其在模型评估、算法改进、特征选择和用户体验优化中的应用,同时提供 Python 实现示例,强调其在确保项目性能和用户体验方面的关键作用。
422 6
常用工具类-Objects
本文介绍了Java标准库中的Objects工具类,它提供了一系列用于操作对象的实用方法,包括判断对象是否为空、比较两个对象是否相等、比较两个对象以及判断两个数组是否深度相等。文章通过示例代码展示了Objects类中isNull、nonNull、requireNull、equals、compare和deepEquals等方法的使用,突出了Objects类在处理对象时的便利性和实用性。
常用工具类-Objects
|
传感器 数据安全/隐私保护 网络架构
认识 IBSS 和 BSS
【8月更文挑战第24天】
1237 0
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp微信小程序的校园二手交易平台系统的详细设计和实现
基于SpringBoot+Vue+uniapp微信小程序的校园二手交易平台系统的详细设计和实现
237 1
|
Ubuntu Shell Linux
Python环境搭建
Python环境搭建
923 1