IT猫扑网:您身边最放心的安全下载站! 最新更新|软件分类|软件专题|手机版|论坛转贴|软件发布

您当前所在位置: 首页数据库Oracle → Oracle游标的打开与关闭

Oracle游标的打开与关闭

时间:2015-06-28 00:00:00 来源:IT猫扑网 作者:网管联盟 我要评论(0)

  以下的内容是对Oracle游标的介绍。以Oracle显示游标为主,本文讲述了如何打开Oracle游标,以及想关的实际操作,如果你对其相关的实际操作有兴趣了解的话,以下的文章将会给你提供相关的知识。

  打开Oracle游标

  使用游标中的值之前应该首先dewengz打开游标,打开游标初始化查询处理。打开游标的语法是:

  1.OPEN cursor_name

  cursor_name是在声明部分定义的游标名。

  例:

  1.OPEN C_EMP;

  关闭Oracle游标

  语法:

  1.CLOSE cursor_name

  例:

  1.CLOSE C_EMP;

  关闭Oracle游标

  从游标得到一行数据使用FETCH命令。每一次提取数据后,游标都指向结果集的下一行。语法如下:

  1.FETCH cursor_name INTO variable[,variable,...]

  对于SELECT定义的Oracle游标的每一列,FETCH变量列表都应该有一个变量与之相对应,变量的类型也要相同。

  例:

  1.SET SERVERIUTPUT ON

  2.DECLARE

  3.v_ename EMP.ENAME%TYPE;

  4.v_salary EMP.SALARY%TYPE;

  5.CURSOR c_emp IS SELECT ename,salary FROM emp;

  6.BEGIN

  7.OPEN c_emp;

  8.FETCH c_emp INTO v_ename,v_salary;

  9.DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename

  10.||'is'|| v_salary);

  11.FETCH c_emp INTO v_ename,v_salary;

  12.DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename

  13.||'is'|| v_salary);

  14.FETCH c_emp INTO v_ename,v_salary;

  15.DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename

  16.||'is'|| v_salary);

  17.CLOSE c_emp;

  18.END

  这段代码无疑是非常麻烦的,如果有多行返回结果,可以使用循环并用Oracle游标属性为结束循环的条件,以这种方式提取数据,程序的可读性和简洁性都大为提高,下面我们使用循环重新写上面的程序:

  1.SET SERVERIUTPUT ON

  2.DECLARE

  3.v_ename EMP.ENAME%TYPE;

  4.v_salary EMP.SALARY%TYPE;

  5.CURSOR c_emp IS SELECT ename,salary FROM emp;

  6.BEGIN

  7.OPEN c_emp;

  8.LOOP

  9.FETCH c_emp INTO v_ename,v_salary;

  10.EXIT WHEN c_emp%NOTFOUND;

  11.DBMS_OUTPUT.PUT_LINE('Salary of Employee'|| v_ename

  12.||'is'|| v_salary);

  13.END

  上述的相关内容就是对Oracle游标的具体操作的描述,希望会给你带来一些帮助在此方面。

关键词标签:Oracle游标

相关阅读

文章评论
发表评论

热门文章 Oracle中使用alter table来增加,删除,修改列的语法 Oracle中使用alter table来增加,删除,修改列的语法 oracle中使用SQL语句修改字段类型-oracle修改SQL语句案例 oracle中使用SQL语句修改字段类型-oracle修改SQL语句案例 误删Oracle数据库实例的控制文件 误删Oracle数据库实例的控制文件 为UNIX服务器设置Oracle全文检索 为UNIX服务器设置Oracle全文检索

相关下载

    人气排行 oracle中使用SQL语句修改字段类型-oracle修改SQL语句案例 Oracle中使用alter table来增加,删除,修改列的语法 ORACLE SQL 判断字符串是否为数字的语句 ORACLE和SQL语法区别归纳(1) oracle grant 授权语句 ORACLE修改IP地址后如何能够使用 如何加速Oracle大批量数据处理 Oracle删除表的几种方法