`

declare_遍历游标的3种方式

 
阅读更多
declare 
  -- Local variables here 
  CURSOR C_EVENT is  select t.name from users t; 
  temp users.name%TYPE; 
begin 
  -- for 遍历游标 
  for temp in C_EVENT 
  Loop 
      dbms_output.put_line('名称:'|| temp.name); 
  End Loop; 
  dbms_output.put_line('------for分割线--------'); 
  --while 遍历游标 
  OPEN C_EVENT;--打开游标 
  FETCH C_EVENT into temp; --取值 
  while C_EVENT%found  
  Loop 
    dbms_output.put_line('名称'||temp); --打印 
    FETCH C_EVENT into temp; --取值 
  End Loop; 
  CLOSE C_EVENT; 
  
  dbms_output.put_line('------while分割线--------'); 
  
  --loop 遍历游标 
  OPEN C_EVENT;--打开游标 
  Loop 
      FETCH C_EVENT into temp; --取值 
      Exit when C_EVENT%NOTFOUND; 
      dbms_output.put_line('名称'||temp); --打印 
  End Loop; 
  CLOSE C_EVENT; 
  
end;

 

-------while..and...
declare 
  -- Local variables here 
  CURSOR C_EVENT is  select t.name,t.status from users t; 
  temp users.name%TYPE;pp users.status%type; v_num int;
begin  
  --while 遍历游标 
  OPEN C_EVENT;--打开游标 
  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); --打印 
    FETCH C_EVENT into temp,pp; --取值 
    v_num:=v_num+1;
  End Loop; 
  CLOSE C_EVENT;  
  
end;

 

分享到:
评论

相关推荐

    SQL_SERVER游标最新详解[定义].pdf

    总之,SQL Server的游标提供了一种灵活的处理数据的方法,它允许用户以更加控制的方式遍历和操作结果集。虽然游标可能带来性能影响,但在某些特定场景下,它们是解决问题的关键工具。理解和掌握游标使用,可以帮助...

    Oracle 遍历游标的四种方式汇总(for、fetch、while、BULK COLLECT)

    以下是Oracle遍历游标的四种主要方式: 1. **FOR循环**: - **显式游标**:首先使用`DECLARE`声明游标,然后通过`OPEN`打开游标,接着使用`FOR`循环遍历每一行数据,最后用`CLOSE`关闭游标。这种方式简洁易读,是...

    SQL Server遍历表中记录的2种方法(使用表变量和游标)

    总结,遍历SQL Server表中的记录,可以采用表变量配合循环的方式,或者使用游标。表变量方法简洁且对数据的影响可控,但可能需要额外删除已处理的行。游标提供了逐行处理的灵活性,但效率较低,应作为最后的手段。在...

    Oracle游标使用方法及语法大全

    在 PL/SQL 中,还可以使用 FOR 循环来遍历游标,例如: ```sql FOR r_emp IN c_emp LOOP DBMS_OUTPUT.PUT_LINE('Salary of Employee ' || r_emp.ename || ' is ' || r_emp.sal); END LOOP; ``` 这里使用 FOR 循环来...

    Oracle游标使用详解

    `FOR`循环提供了一种更简洁的方式来遍历游标中的数据,它可以自动打开和关闭游标,同时将当前行的数据存储在一个匿名记录中。 ```sql CREATE OR REPLACE PROCEDURE PROC_STU3 AS BEGIN DECLARE CURSOR cur_...

    sql 游标遍历 实例

    在SQL(结构化查询语言)中,游标(Cursor)是一种重要的编程工具,它允许数据库开发者按需一行一行地处理查询结果集。游标在处理大量数据时特别有用,特别是当你需要对结果集中的每一行执行不同的操作或者进行迭代...

    mysql游标详解

    游标是 MySQL 中的一种机制,允许开发人员在存储过程和触发器中控制数据的获取和处理。 在 MySQL 中,游标是通过 DECLARE 语句定义的,例如: DECLARE fetchSeqCursor CURSOR FOR SELECT seqname, value FROM sys_...

    cu.rar_游标

    游标在数据库编程中扮演着重要的角色,尤其在处理复杂数据操作时,它提供了一种逐行处理查询结果集的方法。在SQL中,游标允许我们遍历查询返回的结果集,一次处理一行数据,这对于需要按顺序执行某些操作或者逐行...

    oracle游标使用大全1.txt

    ### Oracle游标使用详解 ...此外,还探讨了游标属性的应用场景以及如何通过循环来遍历游标,这对于处理大量数据尤其有用。总之,熟练掌握Oracle游标的使用对于Oracle数据库开发者来说是十分重要的技能之一。

    oracle游标使用及实例

    1. **使用FOR循环遍历游标**: ```sql FOR cur_result IN cur_name LOOP -- 处理每行数据 END LOOP; ``` 例如: ```sql DECLARE CURSOR cur_employee IS SELECT emp_id, emp_name FROM employees; emp_...

    oracle 隐式游标,显示游标,游标循环

    ### Oracle中的游标详解 #### 一、引言 在Oracle数据库中,游标是一种非常重要的机制,它允许用户在程序中对查询结果...此外,通过使用循环结构,可以有效地遍历游标中的每一行数据,从而实现复杂的业务逻辑处理。

    Oralce PLSQL存储过程之游标实践!

    通过以上实例,我们了解了在PL/SQL存储过程中使用游标的多种方式,包括简单的单值输出、遍历游标、带参数的游标以及使用多个游标进行复杂的数据处理。掌握这些技术将有助于开发出更加高效和健壮的应用程序。

    Oracle游标实例.txt

    这是一种更简洁的遍历游标的方式,直接在`FOR`循环中声明游标并自动打开和关闭游标,每次迭代都将当前行的数据作为`test_rec`变量的一部分,从而简化了数据访问过程。 3. **带锁定的游标更新数据**: ```sql ...

    Mysql中sql语句游标详解

    - **连接不同数据处理方式**:游标将面向集合的数据库管理和面向行的程序设计两种不同的数据处理方式结合起来,实现了更高效的数据操作。 #### 三、游标类型 MySQL中支持的游标类型主要分为服务器游标,类似于...

    ORACLE显式游标和动态游标的使用.pdf

    首先定义游标,然后打开并遍历游标,逐行处理数据,最后关闭游标。这种方式有助于在程序中实现更复杂的逻辑,比如循环处理查询结果或条件判断。 总结来说,Oracle数据库中的显式和动态游标提供了一种灵活的方式来...

    oracle存储过程、函数和程序包.pptx

    3. 遍历游标:使用FETCH语句遍历游标。 4. 关闭游标:使用CLOSE语句关闭游标。 记录变量和%ROWTYPE 记录变量是一种特殊的变量,用于存储表中的记录。%ROWTYPE是一种数据类型,用于定义记录变量的类型。 带参数的...

    DB2游标及动态SQL

    在DB2中,游标是一种用于遍历查询结果集的强大工具。它允许用户一行一行地处理数据,这对于需要逐行处理数据的应用场景非常有用。游标通常用于以下几种情况: - 需要处理的数据量较大时。 - 需要逐行对数据进行复杂...

    SQL语句游标的应用

    1. **声明游标**:使用`DECLARE cursor_name CURSOR FOR select_statement`语句来声明一个游标,其中`cursor_name`是你为游标选择的名称,而`select_statement`是指定游标将遍历的数据集的查询语句。 2. **打开游标*...

    plsql基础(游标)

    使用`FOR`循环可以更简洁地遍历游标的结果集: ```plsql DECLARE CURSOR c_employee IS SELECT employee_id, last_name FROM employees WHERE department_id = 10; BEGIN dbms_output.enable(NULL); FOR rec ...

    oracle数据库游标使用例子

    - **循环处理**:通常使用`WHILE`循环结合`%FOUND`或`%NOTFOUND`来遍历游标中的每一行。 - **关闭游标**:使用`CLOSE`语句关闭游标,释放资源。 4. **带参数的游标**: 可以定义带参数的游标,这样可以根据传入...

Global site tag (gtag.js) - Google Analytics