热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

OraclePL/SQL基础游标-mysql教程

ORACLE的游标分为显式游戏、隐式游戏,显式游标是指用户自己定义、操作的,用于处理查询返回多行的SELECT查询结果;隐式游标是系

ORACLE的游标分为显式游戏、隐式游戏,显式游标是指用户自己定义、操作的,用于处理查询返回多行的SELECT查询结果;隐式游标是系

Oracle的游标分为显式游戏、隐式游戏,显式游标是指用户自己定义、操作的,用于处理查询返回多行的SELECT查询结果;隐式游标是系统自动进行操作、用于处理DML语句和返回单行数据的SELECT查询。

在本文,主要讨论显式游标。

一、游标的使用步骤

步骤分四步:定义游标、打开游标、检索游标、关闭游标。

1、定义游标

游标必须在PL/SQL块的声明部分定义。

CURSOR cursor_name IS select_statement ;

定义游标时,并没有生成seletct_statement(SELECT查询)的数据,,当打开游标后,才真正生成数据。

2、打开游标

OPEN cursor_name ;

只有打开游标后,才会从数据库中查询出数据,缓存到内存分配的缓冲区里。

3、检索游标

FETCH curso_name INTO variable_list ;

检索游标的前提是,必须打开了游标,只有打开了游标了,缓冲区才会有数据。

游标检索数据,只能下移,不能回退,如:检索了第二条数据又想检索第一条数据,则必须先关闭游标后,再打开游标,才能检索第一条数据。

4、关闭游标

处理完游标检索出来的数据后,必须关闭游标,才能释放它所占用的系统资源,如所占用的内在缓冲区

CLOSE curso_name ;

相关阅读:

rlwrap - 解决Linux下SQLPLUS退格、上翻键乱码问题

SQLPLUS spool 到动态日志文件名

Oracle SQLPLUS提示符设置

通过设置SQLPLUS ARRAYSIZE(行预取)加快SQL返回速度

二、游标使用例子

declare
-- declare cursor
cursor c_dept is
select * from dept t order by t.deptno;
v_dept c_dept%rowtype;
begin
--open cursor c_dept
open c_dept;

--检索cursor c_dept
loop
fetch c_dept into v_dept;
dbms_output.put_line
('deptno:'||v_dept.deptno||',dname:'||v_dept.dname||',loc:'||v_dept.loc);
exit when c_dept%notfound;
end loop;

--close cursor
close c_dept;
end;

本文永久更新链接地址:


推荐阅读
  • 【MySQL】frm文件解析
    官网说明:http:dev.mysql.comdocinternalsenfrm-file-format.htmlfrm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果 ... [详细]
  • 本文介绍了MySQL窗口函数的基本概念、应用场景及常见函数的使用方法。窗口函数在处理复杂查询时非常有用,例如计算每个用户的订单排名、环比增长率、以及动态聚合等。 ... [详细]
  • 本文探讨了服务器系统架构的性能评估方法,包括性能评估的目的、步骤以及如何选择合适的度量标准。文章还介绍了几种常用的基准测试程序及其应用,并详细说明了Web服务器性能评估的关键指标与测试方法。 ... [详细]
  • 数据输入验证与控件绑定方法
    本文提供了多种数据输入验证函数及控件绑定方法的实现代码,包括电话号码、数字、传真、邮政编码、电子邮件和网址的验证,以及报表绑定和自动编号等功能。 ... [详细]
  • WebBenchmark:强大的Web API性能测试工具
    本文介绍了一款名为WebBenchmark的Web API性能测试工具,该工具不仅支持HTTP和HTTPS服务的测试,还提供了丰富的功能来帮助开发者进行高效的性能评估。 ... [详细]
  • 本文回顾了作者在求职阿里和腾讯实习生过程中,从最初的迷茫到最后成功获得Offer的心路历程。文中不仅分享了个人的面试经历,还提供了宝贵的面试准备建议和技巧。 ... [详细]
  • 春季职场跃迁指南:如何高效利用金三银四跳槽季
    随着每年的‘金三银四’跳槽高峰期的到来,许多职场人士都开始考虑是否应该寻找新的职业机会。本文将探讨如何制定有效的职业规划、撰写吸引人的简历以及掌握面试技巧,助您在这关键时期成功实现职场跃迁。 ... [详细]
  • 随着Linux操作系统的广泛使用,确保用户账户及系统安全变得尤为重要。用户密码的复杂性直接关系到系统的整体安全性。本文将详细介绍如何在CentOS服务器上自定义密码规则,以增强系统的安全性。 ... [详细]
  • 一文详解Linux
    Linuxnetfilter与VRF实验环境如下图所示:配置如下:#!binbashsudoipnetnsaddns1sudoiplinkaddns1veth1typevethpe ... [详细]
  • 本文详细介绍了如何在 Ubuntu 14.04 系统上搭建仅使用 CPU 的 Caffe 深度学习框架,包括环境准备、依赖安装及编译过程。 ... [详细]
  • Linux系统中Boot分区空间不足的处理方案
    在Linux系统的默认安装过程中,Boot分区通常分配的空间为200MB左右,理论上这个大小足以满足日常需求。然而,随着系统的频繁更新,尤其是内核的不断升级,如果不及时清理过期的内核版本,Boot分区很容易出现空间不足的问题。 ... [详细]
  • 想把一组chara[4096]的数组拷贝到shortb[6][256]中,尝试过用循环移位的方式,还用中间变量shortc[2048]的方式。得出的结论:1.移位方式效率最低2. ... [详细]
  • 本文详细介绍了Linux系统中常用的文件操作命令,包括echo用于输出内容至屏幕或文件,cat用于显示或合并文件内容,sed用于流编辑器功能,以及wc命令用于统计文件中的字节、行数和单词数量。通过具体示例加深理解。 ... [详细]
  • 本文深入探讨了Linux内核中进程地址空间的设计与实现,包括虚拟地址空间的概念、内存描述符`mm_struct`的作用、内核线程与用户进程的区别、进程地址空间的分配方法、虚拟内存区域(VMA)的结构以及地址空间与页表之间的映射机制。 ... [详细]
  • MITM(中间人攻击)原理及防范初探(二)
    上一篇文章MITM(中间人攻击)原理及防范初探(一)给大家介绍了利用ettercap进行arp欺骗及劫持明文口令,后来我发现好友rootoorotor的文章介绍比我写的更透彻,所以基础利用大家可以参看 ... [详细]
author-avatar
mzyzzyk
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有