当前位置: 首页 > news >正文

Oracle游标学习

declare-- 1 声明一个游标cursor emp_cursor isselect ID,XM,KSNO from ZGXX where rownum <= 10; v_stu_info emp_cursor%rowtype; --  %rowtype: 声明 emp表的所有字段
begin-- 2 开启游标open emp_cursor;-- 3 获取数据(一次获取一行)循环获取 去掉loop ... end loop 则只查询一条loop fetch emp_cursorinto v_stu_info;-- 游标查不到数据了则结束循环exit when emp_cursor%notfound;-- 打印输出到控制台 --可以处理到另外表中 dbms_output.put_line(v_stu_info.ID || ' : ' || v_stu_info.XM);end loop;-- 4 关闭游标close emp_cursor;end;

很久没写了,直接记录下使用心得,有时候感觉将一个表数据处理到另外表,使用INSERT语句一次性写完很麻烦,这样就可以使用游标的方式分开处理,当然进行实施运维该技能也是必不可少,新上项目的时候有很多数据需要实施人员后台快速转移好,或者造一些数据等。

摘抄了一段游标的解释,自己就不献丑瞎编了:

一、 游标
一、游标概述
1、游标是什么?
游标是SQL的一个内存工作区,由系统或用户以变量的形式定义,用来临时存储多条查询数据的一种数据结构(‘结果集’)。

2、游标分类
游标有两种类型:显式游标和隐式游标。在用到的SELECT…INTO…DELETE.语句,一次只能从数据库中提取一行数据,对于这种形式的查询和DML操作,系统都会使用一个隐式游标。但是如果要提取多行数据,就要由程序员定义一个显式游标( cursor is select ),并通过与游标有关的语句进行处理。

3 、优缺点
(1) 提高 sql ‘执行效率’
(2) 牺牲 ‘内存’

二、游标4大属性
属性           返回值类型     作用
SQL%ROWCOUNT     整型      代表DML语句成功执行的数据行数  
SQL%FOUND       布尔型     值为**TRUE**代表插入、删除、更新或单行查询操作成功  
SQL%NOTFOUND    布尔型     与SQL%FOUND属性返回值相反  
SQL%ISOPEN      布尔型     判断游标是否 '开启'

--未完待续--

http://www.lryc.cn/news/90028.html

相关文章:

  • 几种常用的正则表达式
  • 华为OD机试真题 Java 实现【快速开租建站】【2023Q1 200分】,附详细解题思路
  • 照片中对象识别模型YOLOv3在iOS项目中的浅析与使用
  • Caffeine 本地高速缓存工具类
  • 加密解密软件VMProtect教程(八)许可制度之序列号生成器
  • 单源最短路的建图
  • MyBatis基本操作及SpringBoot单元测试
  • Linux之创建进程、查看进程、进程的状态以及进程的优先级
  • k8s部署rabbitmq
  • 关于QGroundControl的软件架构的理解
  • Android 文本识别:MLKIT + PreviewView
  • 刮泥机的分类有哪些及组成部分
  • Qt编程基础 | 第六章-窗体 | 6.2、VS导入资源文件
  • NET框架程序设计-第4章类型基础
  • Java设计模式-备忘录模式
  • Zookeeper集群 + Kafka集群
  • “邮件营销新趋势,这个平台让你收获颇丰!
  • Python列表推导
  • git使用查看分支、创建分支、合并分支
  • vue3.0与vue2.0
  • HTML 中的常用标签用法
  • 【C++】指针 - 定义和使用,所占内存空间,空指针,野指针,const 修饰指针,指针和数组,指针和函数
  • 新规之下产业园区如何合理收费水电费用
  • 1011. 在 D 天内送达包裹的能力
  • 基于SpringBoot养老院管理系统
  • 1.3 eBPF的工作原理初探
  • 【CH32】| 02——常用外设 | GPIO
  • 第四章 测试用例编
  • 解决dpdk reserve的内存返回的虚拟地址和iova地址一样的问题
  • JQuery实现小项目