当前位置:网站首页 > 技术博客 > 正文

oracle游标的使用




注:由于在学习游标的时候兼顾的学习了存储过程,所以这里针对游标的建立均在存储过程中建立。

 

游标是一个私有的sql工作区,简单的说就是受到影响的数据都会存在这里面,比如执行完update语句但是没有commit,那这条修改过但是没有提交的数据是放在一个虚表中的,这个虚表就是游标。

 

 

游标一共分为显示游标、隐式游标、还有带参数的游标三种,下面我们一一这三种类型的游标进行练习。

 

 

这里声明几个关键词与游标的属性。

  • cursor 游标名【游标,在declare中创建游标时使用它修饰】
  • fetch 游标名【表示提取游标里的数据】
  • open 游标名【表示打开游标】
  • close 游标名【表示关闭游标】
  • 游标名%ROWCOUNT【表示受影响的数据一共有多少行】
  • 游标名%NOTFOUND【返回true和false,表示是否没有数据】
  • 游标名%FOUND【返回true和false,表示是否有数据】
  • 游标名%ISOPEN【返回true和false,表示游标是否打开】

 

显示游标

需要的操作:定义游标、打开游标、提取数据、关闭游标;主要用于对查询语句的处理,对根据条件查询出来的数据进行一条一条处理。

 

sql窗口

Test窗口

隐式游标

系统自动创建游标,游标名是sql,主要用于直接对单行的数据增删改的操作。由于开始我们提到游标里的数据就是一些受到影响的数据但是还没有被提交,隐式游标就是直接使用dml语句后没有提交的数据。

 

sql窗口

Test窗口

 

参数游标

在定义游标时加入参数,可以配合for循环快速找到数据。隐含的执行了打开提取关闭,代码相对精简。for循环的结构请看下面的plsql的语法

 

sql窗口

 

Test窗口

 

使用游标时的注意事项

  • 使用游标修改数据的时候最后要记得提交
  • 如果是级联操作可以使用for update锁表
  • 在修改时必须使用where current of 语句。

版权声明


相关文章:

  • 条形码和二维码的工作原理2025-01-03 08:30:00
  • java有参构造和无参构造2025-01-03 08:30:00
  • 文件对比工具安卓版2025-01-03 08:30:00
  • python安装pyside22025-01-03 08:30:00
  • rsa是哪种加密方式2025-01-03 08:30:00
  • socks5代理原理2025-01-03 08:30:00
  • 计算机网络常见的硬件设备有哪些2025-01-03 08:30:00
  • python迭代器详解2025-01-03 08:30:00
  • string字符串转为数组2025-01-03 08:30:00
  • tftp工具2025-01-03 08:30:00