oracle中的游标的原理和使用详解
游标的简介:
逐行处理查询结果,以编程的方式访问数据
游标的类型:
1,隐式游标:在 PL/SQL 程序中执行DML SQL 语句时自动创建隐式游标,名字固定叫sql。
2,显式游标:显式游标用于处理返回多行的查询。
3,REF 游标:REF 游标用于处理运行时才能确定的动态 SQL 查询的结果
隐式游标:
q在PL/SQL中使用DML语句时自动创建隐式游标 q隐式游标自动声明、打开和关闭,其名为 SQL q通过检查隐式游标的属性可以获得最近执行的DML 语句的信息 q隐式游标的属性有: q%FOUND – SQL 语句影响了一行或多行时为 TRUE q%NOTFOUND – SQL 语句没有影响任何行时为TRUE q%ROWCOUNT – SQL 语句影响的行数 q%ISOPEN - 游标是否打开,始终为FALSE
?
|
在select中有两个中比较常见的异常: 1. NO_DATA_FOUND 2. TOO_MANY_ROWS
?
|
显式游标:
sqlserver与oracle的不同之处在于: 最后sqlserver会deallocate 丢弃游标,而oracle只有前面四步: 声明游标、打开游标、使用游标读取记录、关闭游标。
显式游标的使用:
?
|
REF游标也叫动态游标:
qREF 游标和游标变量用于处理运行时动态执行的 SQL 查询 q创建游标变量需要两个步骤: q声明 REF 游标类型 q声明 REF 游标类型的变量 q用于声明REF 游标类型的语法为:
TYPE<ref_cursor_name> IS REF CURSOR
[RETURN<return_type>];
?
|
oracle中的游标的原理和使用详解相关推荐
- oracle中的exists 和 not exists 用法详解
from:http://blog.sina.com.cn/s/blog_601d1ce30100cyrb.html oracle中的exists 和 not exists 用法详解 (2009-05- ...
- Oracle中的NULL(二、NULL详解)
2019独角兽企业重金招聘Python工程师标准>>> 说明:本篇文章是摘取自以下链接的Blog,但作者的这篇文章也是转载(非常感谢),我在记录的时候也有添加自己的思考. http: ...
- Oracle中多表联合更新处理方法详解
ORACLE中多表关联更新与SQL Server和MYSQL的语法稍有不同,现将ORACLE中多表关联更新的几种方法处理如下: 一.创建测试表和添加测试数据 CREATE TABLE t_test01 ...
- oracle存储回车换行,oracle中去掉回车换行空格的方法详解
去除换行 update zhzl_address t set t.add_administration_num=replace(t.add_administration_num,chr(10),'') ...
- oracle中的exists 和not exists 用法详解
有两个简单例子,以说明 "exists"和"in"的效率问题 1) select * from T1 where exists(select 1 from T2 ...
- python找图是什么模块-python中模块查找的原理与方法详解
前言 本文主要给大家介绍了关于python模块查找的原理与方式,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍: 基础概念 module 模块, 一个 py 文件或以其他文件形式存在的可被 ...
- Oracle中rownum的使用与总结(详解)
rownum 1.rownum:伪列.顾名思义:是数据库自己创建出来的字段. 2.rownum是个伪列,伴随着结果集的过程而生成的字段. 举个例子:select t0.* from qtpay.tb_ ...
- 在oracle中游标的操作,Oracle中的游标和函数详解
Oracle中的游标和函数详解 1.游标 游标是一种 PL/SQL 控制结构:可以对 SQL 语句的处理进行显示控制,便于对表的行数据 逐条进行处理. 游标并不是一个数据库对象,只是存留在内存中. 操 ...
- Spark SQL原理及常用方法详解(二)
Spark SQL 一.Spark SQL基础知识 1.Spark SQL简介 (1)简单介绍 (2)Datasets & DataFrames (3)Spark SQL架构 (4)Spark ...
- 数据库oracle认证方式,oracle数据库启动流程及登录认证方式详解
转自:https://www.2cto.com/database/201803/726644.html ■ oracle启动流程-windows下 1) lsnrctl start (启动监听) ...
最新文章
- 面向世界、勇于进取、树立自信、保持特色--自博162
- python乘法口诀代码-python---九九乘法表代码
- 中国储能电池行业经济效益评价与投资战略规划展望报告2022-2028年版
- OpenGL程序运行提示“glut32.dll丢失问题”
- php高中级程序员面试题,PHP 程序员面试笔试常考面试题精讲
- HTML多选框滚动条,08:HTMLayout 自定义滚动条样式
- Python练习:期末测评
- thinkPHP的Excel插件
- android 自动读取ecxel_android 读取excel表格数据,并存入数据库
- Jupyter Lab的学习笔记
- Win11掉帧严重是怎么回事?Win11玩游戏掉帧的解决方法
- 【Android工具】Yandex!懂你的超级好用手机浏览器,可以安装PCchrome插件的手机浏览器!...
- win10计算机无限弹网页,Win10老弹出窗口怎么回事?Win10持续闪现神秘窗口现象的解决办法...
- word输入对号以及带框的对号
- 从困在系统的外卖骑手,看初露端倪的赛博朋克式“技术控制”
- 面经---测试工程师web端自动化---大厂面试题
- 浮点数的加减运算(阶码、尾数)
- 互斥事件的概念和公式_高三数学辨析专题---概率模型中互斥、对立、独立事件...
- 【javascript】高级语法——严格模式(详解)
- Vscode 中LiveReload插件总是启动失败和出错 图文详细分析和stepbystep解决方案
热门文章
- 华为新系统鸿蒙,爆料|疑似华为新MatePad Pro包装盒曝光:搭载鸿蒙OS
- python内置数据类型列表_python数据类型内置方法 字符串和列表
- jq获取验证码成功之后弹出的提示框_验证码填写错误,请重新填写。。。
- 怎么修改HTML中样式的项目序号,给Ol的序号设置样式,怎么做?
- 皮尔逊相关系数php,若两变量X和y之间的Pearson相关系数大于0.3且小于0.5,则说明()。...
- mysql subquery_mysql-8-subquery
- oracle中master实例,oracle数据库加密--wallet 实例
- linux下解除端口防火墙,Linux下防火墙配置、端口的开启和关闭
- Bootstarp4 文字排版
- 如何为我们的程序编写开发文档——Java文档注释