declare -- Local variables here CURSOR C_EVENT(ROW_NUM NUMBER DEFAULT 3) is (select t.name from users t where rownum <ROW_NUM); temp users.name%TYPE; begin -- for 遍历游标 for temp in C_EVENT(ROW_NUM=>2) Loop dbms_output.put_line('名称:'|| temp.name); dbms_output.put_line('index: '||C_EVENT%ROWCOUNT); End Loop; dbms_output.put_line('------分割线------'); --while 遍历游标 OPEN C_EVENT(ROW_NUM=>3);--打开游标 FETCH C_EVENT into temp; --取值 while C_EVENT%found Loop dbms_output.put_line('名称:'||temp); --打印 dbms_output.put_line('index: '||C_EVENT%ROWCOUNT); FETCH C_EVENT into temp; --取值 End Loop; CLOSE C_EVENT; dbms_output.put_line('------分割线------'); --loog 遍历游标 OPEN C_EVENT(ROW_NUM=>4);--打开游标 Loop FETCH C_EVENT into temp; --取值 Exit when C_EVENT%NOTFOUND; dbms_output.put_line('名称:'||temp); --打印 dbms_output.put_line('index: '||C_EVENT%ROWCOUNT); End Loop; CLOSE C_EVENT; end; -------while..and... declare -- Local variables here CURSOR C_EVENT(ROW_NUM NUMBER DEFAULT 3) is (select t.name,t.status from users t where rownum <ROW_NUM); temp users.name%TYPE;pp users.status%type; v_num int; begin --while 遍历游标 OPEN C_EVENT(ROW_NUM=>10);--打开游标 FETCH C_EVENT into temp,pp; --取值 v_num:=1; while C_EVENT%found and v_num<=9 Loop dbms_output.put_line('名称'||temp||'状态'||pp||'v_num'||v_num); --打印 dbms_output.put_line('index: '||C_EVENT%ROWCOUNT); FETCH C_EVENT into temp,pp; --取值 v_num:=v_num+1; End Loop; CLOSE C_EVENT; end;
相关推荐
Oracle 遍历游标的四种方式(for、fetch、while、bulk collect+forall) 2.问题分析 我们可以把游标想象成一张表,想要遍历游标,就要取到游标的每行数据,所以问题的关键就成了:如何取到行数据? 3.解决方案 ...
本文将介绍利用使用表变量和游标实现数据库中表的遍历。 表变量来实现表的遍历 以下代码中,代码块之间的差异已经用灰色的背景标记。 代码如下: DECLARE @temp TABLE ( [id] INT IDENTITY(1, 1) , [Name] VARCHAR(10...
declare cur cursor for select AccountID,EmployeeName from #Temp open cur fetch next from cur into @tmpID, @tmpName fetch next from cur into @tmpID, @tmpName end close cur deallocate cur
尽管游标能遍历结果中的所有行,但他一次只指向一行。 (2)游标的作用 游标的一个常见用途就是保存查询结果,以便以后使用。 (3)游标的分类 游标分为显示游标和隐式游标 隐式游标:是用户操作SQL时自动生成的,而...
本文实例讲述了mysql游标的原理与用法。分享给大家供大家参考,具体如下: 本文内容: 什么是游标 创建游标 使用游标 首发日期:2018-04-18 什么是游标: 如果你前面看过mysql函数...定义游标:declare 游标名 c
用游标,和WHILE可以遍历您的查询中的每一条记录并将要求的字段传给变量进行相应的处理 ================== DECLARE @A1 VARCHAR(10), @A2 VARCHAR(10), @A3 INT DECLARE CURSOR YOUCURNAME FOR SELECT A1,A2,A3 ...
用游标Cursor_Table,遍历所有表 DECLARE Cursor_Table CURSOR FOR SELECT name from sysobjects WHERE xtype = ‘u’ AND name <> ‘dtproperties’; OPEN Cursor_Table; DECLARE @tableName NVARCHAR(M
3)取得结果放入PL/SQL变量中; FETCH cursor_name INTO list_of_variables; FETCH cursor_name INTO PL/SQL_record; 4)关闭游标。CLOSE cursor_name 注意:在声明游标时,select_statement不能包含INTO子句。...
利用游标,程序可以逐个地处理和遍历一次检索返回的整个记录集。 为了处理SQL语句,Oracle将在内存中分配一个区域,这就是上下文区。这个区包含了已经处理完的行数、指向被分析语句的指针,整个区是查询语句返回的...
--两张表的连接 此种写法比用where更清晰 69、select ename, dname, grade from emp e join dept d on(e.deptno = d.deptno) join salgrade s on (e.sal between s.losal and s.hisal) ...
1. 层次结构模型: 层次结构模型实质上是一种有根结点的定向有序树,IMS(Information Manage-mentSystem)是其典型代表。 2. 网状结构模型:按照网状数据结构建立的数据库系统称为网状数据库系统,其典型代表是DBTG...