Oracle游标有何用,Oracle游标使用方法有哪些?
在PL/SQL中依然可以使用UPDATE和DELETE语句更新或删除数据行。显式游标只有在需要获得多行数据的情况下使用。PL/SQL提供了仅仅使用游标就可以执行删除或更新记录的方法。 UPDATE或DELETE语句中的WHERE CURRENT OF子串专门处理要执行UPDATE或DELETE操作的表中取出的最近的数据。
要使用这个方法,在声明游标时必须使用FOR UPDATE子串,当对话使用FOR UPDATE子串打开一个游标时,所有返回集中的数据行都将处于行级(ROW-LEVEL)独占式锁定,其他对象只能查询这些数据行,不能进行UPDATE、DELETE或SELECT。
。。FOR
UPDATE操作。 语法:
FOR UPDATE [OF [schema。]table。column[,[schema。]table。column]。。
[nowait]
在多表查询中,使用OF子句来锁定特定的表,如果忽略了OF子句,那么所有表中选择的数据行都将被锁定。
如果这些数据行已经被其他会话锁定,那么正常情况下ORACLE将等待,直到数据行解锁。 在UPDATE和DELETE中使用WHERE CURRENT OF子串的语法如下: WHERE{CURRENT OF cursor_name|search_condition} 例: DELCARE CURSOR c1 IS SELECT empno,salary FROM emp WHERE comm IS NULL FOR UPDATE OF comm; v_comm NUMBER(10,2); BEGIN
FOR r1 IN c1 LOOP
IF r1。
salary<500 THEN
v_comm:=r1。salary*0。25;
ELSEIF r1。salary<1000 THEN
v_comm:=r1。salary*0。20;
ELSEIF r1。salary<3000 THEN
v_comm:=r1。
salary*0。15;
ELSE
v_comm:=r1。salary*0。12;
END IF;
UPDATE emp;
SET comm=v_comm
WHERE CURRENT OF c1l;
END LOOP; END。
全部
Oracle游标有何用,Oracle游标使用方法有哪些?相关推荐
- 数据如何导入oracle数据库,如何用Oracle导入导出工具来实现Oracle数据库移植?
Oracle数据库作为目前市场的主流数据库之一,许多应用都在其上进行开发,由于Oracle数据库更新换代的原因和不同的应用程序提供商,可能会造成在一个单位的应用中存在Oracle的几种版本,如Orac ...
- Oracle 11g 新特性 -- 自适应游标共享(Adaptive Cursor Sharing: ACS) 说明
一.自适应游标共享(Adaptive Cursor Sharing) 说明 1.1 ACS概述 绑定变量使Oracle DB 可以为多条SQL 语句共享单个游标,以减少分析SQL 语句所使用的共享内存 ...
- Oracle主机变量锚定、游标变量
System Global varaibles. 系统全局变量,只要sqlplus不断开连接,name这个变量会一直存在,切换用户会话对其无影响. SQL> -- 非plsql变量 SQL> ...
- Oracle 快速入门 PL/SQL游标
目录 一.PL/SQL概念: ①数据类型: ②逻辑比较: ③控制语句: ④循环语句:有三种: 顺序语句:goto 标名--<<标名>> ⑤异常: ⑥函数: 二.P ...
- Oracle显式游标和隐式游标
游标的概念: 游标是SQL的一个内存工作区,由系统或用户以变量的形式定义.游标的作用就是用于临时存储从数据库中提取的数据块.在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处 ...
- oracle退出本循环,Oracle,跳出游标循环
1,跳出游标的循环,不执行遍历了. 方法一:goto for c_row in 游标 loop if 条件 then dbms_output.put_line('测试跳出循环'); goto brea ...
- oracle 游标查询数据库,Oracle数据库使用游标查询结果集所有数据
--Oracle使用游标查询结果集所有数据 DECLARE myTabelName NVARCHAR2(200):=''; --表名 myTableRowComment NVARCHAR2(200): ...
- 使用oracle 游标修改数据,Oracle 函数施行修改和游标传递
Oracle 函数执行修改和游标传递 ORA-14551:不能在查询语句中执行dml语句,开始误以为函数里不能执行DML或DDL语句,后查到前辈通过采用自治事务解决,在此基础上演例 传递SQL语句对数 ...
- Oracle隐式游标和显式游标
游标是什么?就是在内存开辟的一块临时存储空间. 1.Oracle隐式游标 1.1Oracle有常用的哪些隐式游标 1.2 Oracle隐式游标演示 -- 隐式游标 (使用的表为Oracle默认自带的e ...
最新文章
- android中volley通信框架简介
- codevs 1066 引水入城(DFS+DP)
- 深入理解javascript原型和闭包(15)——闭包
- 后悔!我早该把这1W字详解的 InnoDB 原理给你!
- MySQL-06:pyMySQL增删改查基本命令笔记
- 工业级POE交换机技术优势及供电方法详解!
- 2018-2019-2 20165303《网络对抗技术》Exp2 后门原理与实践
- 异常处理第一讲(SEH),筛选器异常,以及__asm的扩展,寄存器注入简介
- Java线程池ExecutorService
- c语言求不成功查找长度的代码_哈希查找算法(C语言实现)
- 代码重构方向原则指导
- 已知拱高和弦长,求弧长、半径、角度
- python输入一个三位数输出百位十位个位_编程实现:输入一个三位数,输出其百位、十位、个位上的数字。_学小易找答案...
- 会员运营五大难题与破解之道
- 怎么制作合法有效的电子签名?
- 学好UI设计必备软件
- Java编程到底是用idea好还是eclipse好?
- 28.html设置字体
- c++ 内存泄漏(Detected memory leaks)解决
- java的体系结构_java体系结构介绍
热门文章
- wxWidgets:wxBitmapButton类用法
- 在 WxHtmlWindow 中调用默认浏览器
- boost::next_permutation相关的测试程序
- boost::interprocess::bufferstream用法的测试程序
- boost::graph模块使用breadth_first_search()实现GGCL算法的测试程序
- GDCM:处理(各种操作处理)DICOM图像文件的测试程序
- DCMTK:类OFMap的测试程序
- VTK:PolyData之HighlightBadCells
- C++longest palindromic subsequence最长回文子序列算法实现(附完整源码)
- C语言内存管理之结构体