`
cakin24
  • 浏览: 1331234 次
  • 性别: 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
分享到:
评论

相关推荐

    PL/SQL Developer sql 智能提示插件

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

    oracle .

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

    CnPlugin_1.5.4

    本软件CnPlugin是Allround Automations公司PL/SQL Developer工具的插件,支持PL/SQL Developer 7.0以上版本。增加了PL/SQL Developer工具本身所没有的一些小功能,功能基本一些已有官方插件的整合,以方便Oracle编程...

    数据库基础

    第十二章PL/SQL 块结构和组成元素 235 §12.1 PL/SQL结构 235 §12.2 PL/SQL块 236 §12.3 标识符 236 §12.4 PL/SQL 变量类型 237 §12.4.1 变量类型 237 §12.4.2 复合类型(记录和表) 238 §12.4.3 使用%ROWTYPE...

    Oracle8i_9i数据库基础

    第十二章PL/SQL 块结构和组成元素 235 §12.1 PL/SQL结构 235 §12.2 PL/SQL块 236 §12.3 标识符 236 §12.4 PL/SQL 变量类型 237 §12.4.1 变量类型 237 §12.4.2 复合类型(记录和表) 238 §12.4.3 使用%ROWTYPE...

    utPLSQL-SQLDeveloper:直接从SQL Developer运行单元测试的扩展

    utPLSQL for SQL Developer介绍用于SQL Developer的utPLSQL将OracleSQL Developer扩展到运行utPLSQL单元测试调试utPLSQL... 根据在PL / SQL编辑器中的光标位置确定测试过程。调试utPLSQL测试选择要调试的测试,就像只

    Oracle.11g.从入门到精通 (1/2)

    1.4.2 PL/SQL部分 1.4.3 其他部分 第2章 Oracle在Windows平台上的安装与配置 2.1 Oracle通用安装器 2.2 Oracle数据库软件的安装 2.3 Oracle数据库软件的卸载 2.3.1 停止所有的Oracle服务 2.3.2 用OUI卸载所有的...

    Oracle.11g.从入门到精通 (2/2)

    1.4.2 PL/SQL部分 1.4.3 其他部分 第2章 Oracle在Windows平台上的安装与配置 2.1 Oracle通用安装器 2.2 Oracle数据库软件的安装 2.3 Oracle数据库软件的卸载 2.3.1 停止所有的Oracle服务 2.3.2 用OUI卸载所有的...

    Oracle11g从入门到精通

    5.5.2 定义页与报告的标题和维数 5.5.3 存储和打印结果 第6章 Oracle的基本操作 6.1 Oracle的启动与关闭 6.1.1 启动Oracle数据库 6.1.2 关闭Oracle数据库 6.2 表的创建与改进 6.2.1 表的基本概念 6.2.2 表...

    Oracle11g从入门到精通2

    5.5.2 定义页与报告的标题和维数 5.5.3 存储和打印结果 第6章 Oracle的基本操作 6.1 Oracle的启动与关闭 6.1.1 启动Oracle数据库 6.1.2 关闭Oracle数据库 6.2 表的创建与改进 6.2.1 表的基本概念 ...

    Oracle SQL Handler (Oracle客户端工具) V3.1

    还有,如果光标停在括号处,高亮度显示配对的括号,增强可读性 <5> 方便高效的行块和列块操作,能对行块和列块中的文本进行拷贝、剪切、删除、左右移动等,以满足特殊需求 <6> 按钮"Format SQL" 能将语句块中的杂乱...

    Oracle开发工具 - Oracle SQL Handler(功能强大,超方便好用, 免装客户端, Windows / Linux)

    智能的SQL编辑器:自动弹出提示窗口,列出关键字、关键字组合、函数名、列名、对象 名、对象类型、参数、包内的过程和函数,提高SQL编辑效率。例如: (1)输入字串“sel”,一秒钟后列出以“sel”开头的所有关键字...

    震撼推出超方便实用的Oracle开发工具 - Oracle SQL Handler,双语界面,智能SQL编辑器,免装Oracle客户端,能运行于Windows, 双语界面

    智能的SQL编辑器:自动弹出提示窗口,列出关键字、关键字组合、函数名、列名、对象名、对象类型、参数 、包内的过程和函数,提高SQL编辑效率。例如: (1)输入字串“sel”,一秒钟后列出以“sel”开头的所有关键字...

    一个oracle客户端(oracle sql handler)

    多线程、多连接、智能/彩色SQL编辑器、中英文双语界面并能切换、支持 PL/SQL、批量SQL运行、高效的块操作、方便的表格操作,不需要安装 Oracle 客户端,能运行于所有的主流平台包括 Windows、Linux 、Unix 及 Mac ...

    Toad 使用快速入门

    和其他的 PL/SQL 编辑工具不同,TOAD 允许在一个文件中操作多个数据库对象,可以编译一个对象、编译多个对象、编译到当前光标、从光标开始编译。在运行出现错误时,存储过程停止到有问题的语句。用户可以使用快捷...

    pgscope:PLpgSQL源代码树搜索和浏览工具-Search source code

    PL / pgSQL源代码树搜索和浏览工具 与vim无缝嵌入 入门 下载 从源安装 git clone https://github.com/gjalves/pgscope.git cd pgscope git clone https://github.com/lfittl/libpg_query.git cd libpg_query make ...

    utPLSQL:PLSQL测试框架

    介绍utPLSQL是用于Oracle PL / SQL和SQL的单元测试框架。 该框架遵循行业标准和现代单元测试框架(如和最佳模式主要特征与比较数据的多种方法复杂类型(对象/集合/光标)的本地比较深入一致地报告测试失败和错误通过...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    10.2.5 将子查询因子化应用到PL/SQL中 270 10.3 递归子查询 273 10.3.1 一个CONNECT BY的例子 274 10.3.2 使用RSF的例子 275 10.3.3 RSF的限制条件 276 10.3.4 与CONNECT BY的不同点 276 10.4 复制CONNECT BY...

Global site tag (gtag.js) - Google Analytics