`
cakin24
  • 浏览: 1396879 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

PL/SQL光标属性和光标数的限制

阅读更多

一 光标属性

%found:光标找到记录为真
%notfound:光标没找到记录为真
%isopen:判断光标是否打开
%rowcount:影响的行数
 
二 实例
演示%isopen属性
1、代码
  1. set serveroutput on
  2. declare
  3. --定义光标
  4. cursor cemp isselect empno,empjob from emp;
  5. pempno emp.empno%type;
  6. pjob emp.empjob%type;
  7. begin
  8. open cemp;
  9. if cemp%isopen then
  10. dbms_output.put_line('光标已经打开');
  11. else
  12. dbms_output.put_line('光标没有打开');
  13. endif;
  14. close cemp;
  15. end;
  16. /
2、运行结果
光标已经打开
 
PL/SQL 过程已成功完成。
 
演示%rowcount属性
1、代码
  1. set serveroutput on
  2. declare
  3. --定义光标
  4. cursor cemp isselect empno,empjob from emp;
  5. pempno emp.empno%type;
  6. pjob emp.empjob%type;
  7. begin
  8. open cemp;
  9. loop
  10. --取出一条记录
  11. fetch cemp into pempno,pjob;
  12. exitwhen cemp%notfound;
  13. --打印rowcount的值
  14. DBMS_OUTPUT.PUT_LINE('rowcount:'||cemp%rowcount);
  15. end loop;
  16. close cemp;
  17. end;
  18. /
2、运行结果
rowcount:1
rowcount:2
rowcount:3
rowcount:4
rowcount:5
rowcount:6
rowcount:7
rowcount:8
rowcount:9
rowcount:10
rowcount:11
rowcount:12
rowcount:13
rowcount:14
 
三 光标的限制
1、概念
默认限制下,oracle数据库只允许在同一会话中,打开300个光标
光标限制查看方法:
  1. SQL> show parameter cursor
  2. NAME TYPE VALUE
  3. -----------------------------------------------------------------------------
  4. cursor_sharing string EXACT
  5. cursor_space_for_time boolean FALSE
  6. open_cursors integer 300
  7. session_cached_cursors integer 50
修改光标数的限制:
alter system set open_cursors = 400 scope=both;
scope的取值
both:更改当前实例,也更改参数文件。
memory:只更改当前实例,不更改参数文件。
spfile:只更改参数文件,不更改当前实例,数据库需要重启。
2、实例
  1. SQL> alter system set open_cursors =400 scope=both;
  2. 系统已更改。
  3. SQL> show parameter cursor
  4. NAME TYPE VALUE
  5. -----------------------------------------------------------------------------
  6. cursor_sharing string EXACT
  7. cursor_space_for_time boolean FALSE
  8. open_cursors integer 400
  9. session_cached_cursors integer 50
分享到:
评论

相关推荐

    Oracle PL/SQL

    本学习指南旨在帮助读者快速掌握 PL/SQL 的基础知识和高级技术。 PL/SQL 区块(BLOCK)的结构 PL/SQL 中的基本结构单元是区块(BLOCK),它是由 BEGIN 和 END 语句所定义的。一个 PL/SQL 程序通常由多个区块组成,...

    Oracle数据库实用教程第三章 PL/SQL程序设计.pptx

    本章节主要介绍了PL/SQL程序设计的基本概念和结构,包括PL/SQL的优点、运行PL/SQL程序、PL/SQL块结构、PL/SQL基本语法、PL/SQL处理流程、异常处理、游标、存储过程和函数、触发器等知识点。 PL/SQL的优点包括在客户...

    PL/SQL Developer

    只需将光标置于特定的PL/SQL关键字或对象上,系统会自动显示相关的文档和用法示例,极大地减少了查找资料的时间,提高了编码速度。 其次,该软件提供了全面的数据浏览和管理功能。用户可以直接在PL/SQL Developer中...

    PL/SQL设置宝典

    - **AutoSelect Statement**:勾选后,当在SQL窗口中输入或编辑多条SQL语句时,PL/SQL Developer会自动识别出当前光标所在位置的语句,并对其进行高亮显示。 - **AutoFormat SQL**:如果希望在每次执行SQL语句前...

    PL/SQL Developer 使用技巧小结

    PL/SQL Developer 提供了多种编辑环境,如 SQL Window、Command Window 和 Program Window。每个窗口都有不同的用途,比如: - **SQL Window** 主要用于执行 SQL 查询语句。 - **Command Window** 可以运行各种命令...

    oracle pl/sql 开发教程

    在本教程中,我们将深入探讨PL/SQL的关键知识点,包括如何创建程序块、处理异常、使用光标以及数组处理,同时也会介绍一些常用的函数,如DECODE(),并讨论PL/SQL的优化规则。 首先,让我们了解如何创建PL/SQL程序块...

    PL/SQL Developer sql 智能提示插件

    解压后将plugins中的文件放到pl-sql安装目录下对应的plugin(或Plugins)文件夹里,在写sql时,比如输入“s+空格”直接出来对应的“select a.*,a.rowid from 光标位置 a ;”

    PL/SQL常用设置(个人觉得挺实用的)

    PL/SQL Developer 是一款强大的集成开发环境,专门用于编写、调试和管理 PL/SQL 代码。以下是一些关于 PL/SQL Developer 的常用设置和功能的详细说明: 1. **代码提示设置**: - 手动提示:在 `Tools` 菜单中选择 ...

    plsql使用技巧

    【PL/SQL 使用技巧】 ...以上技巧能够极大地提高PL/SQL的使用效率,使得数据库操作和开发变得更加流畅。通过熟练掌握这些技巧,可以提升你的工作效率,减少错误,并让你在处理Oracle数据库时更加游刃有余。

    oracle pl/sql Code

    2. 光标移动:在FORM中,当光标位于块的最后一个元素时,可以通过设置块属性或编写PL/SQL过程,使得按下"Enter"键后光标自动跳转到下一条记录的第一个元素。 3. 自动登录:在启动FORM程序时,可以通过设置环境变量...

    PL/Sql设置技巧

    在Oracle PL/SQL开发环境中,优化工具设置可以显著提升开发效率和用户体验。以下是一些关键的设置技巧: 1. **默认选中"My Objects"**:默认情况下,PLSQL Developer的Browser会选择"All objects",这对于拥有大量...

    oracle .

    PL/SQL 块结构和组成元素 PL/SQL 处理流程 光标的使用 错误处理 存储过程和函数 创建包和使用包 触发器 外部存储过程 会话间通信 数据库作业和文件I/O 在PL/SQL 使用SQL语句 PL/SQL程序的测试和调试 性能及其它问题 ...

    .Oracle_9i10g_PLSQL编程详细(350页).pdf

    PL/SQL支持显式光标和隐式光标的使用,并提供了光标循环来遍历数据集合。在处理数据时,可能会遇到没有数据可返回的情况,这时可以使用NO_DATA_FOUND和%NOTFOUND来处理异常情况。SELECTFORUPDATE光标用于在查询数据...

    Oracle 9i10g PLSQL编程简要

    4. **安全性**:PL/SQL程序可以在数据库级别执行,限制了外部访问,增加了系统的安全性。 #### 二、PL/SQL中使用的SQL语句 PL/SQL支持大部分标准SQL语句,如SELECT、INSERT、UPDATE、DELETE等,并通过动态SQL语句...

    pl sql经验积累

    如果希望执行当前光标所在的 SQL 语句,可以在 PL/SQL Developer 的偏好设置中开启自动选择 SQL 语句的功能:PL/SQL Developer -> Tools -> Preferences -> SQL Window -> Window types,勾选“Auto Select ...

    plsql基础教程.pdf

    声明部分:在这里声明 PL/SQL 所需的变量、类型和光标。变量类型包括 Char、Varchar2、Binary_integer、Number、Date、Boolean、Rowid 等。每个变量都需要在定义部分中明确定义,否则无法在执行部分中引用。 执行...

    PL/SQL DEVELOPER 使用的一些技巧

    PL/SQL Developer是一款专用于Oracle数据库的集成开发环境,它为编写、调试和管理PL/SQL代码提供了便利。以下是一些提升效率和增强使用体验的技巧: 1. **优化对象浏览器**: - 默认选择"My Objects":在登录PL/...

    Oracle PLSQL入门知识.doc

    在Oracle数据库环境中,PL/SQL是开发存储过程、函数、包和触发器的主要工具,使得数据库管理更加高效和灵活。 1. PL/SQL简介: PL/SQL全称Procedural Language/SQL,它是Oracle数据库提供的一个内置编程语言,允许...

    PL_SQL_Developer使用方法技巧总结

    PL/SQL Developer 是一款专为 Oracle 数据库设计的强大开发工具,它提供了丰富的功能来提高开发效率和代码质量。以下是一些常用的快捷键,帮助你在日常开发中更加得心应手。 - **编辑操作**: - `Ctrl+Z`:撤销上...

Global site tag (gtag.js) - Google Analytics