【PLSQL】游标】的更多相关文章

游标是一个指针,它指向一块SQL区域,该区域用于存储处理过来的SELECT或者其他的DML操作返回的数据.由PLSQL创建并管理的游标成为隐式游标,用户创建并管理的成为显示游标.游标可以看做是指向记录集合的指针,他可以在集合记录中移动以访问每条记录的功能. 显示游标的使用: 创建游标 CURSOR cursor_name IS sql_statement: 游标一旦创建成功,Oracle会为其分配内存,并与定义的SQL关联起来. 打开游标 OPEN cursor_name [argument,.…
静态游标:结果集已经确实(静态定义)的游标.分为隐式和显式游标 隐式游标:所有DML语句为隐式游标,通过隐式游标属性可以获取SQL语句信息: 显式游标:用户显式声明的游标,即指定结果集.当查询返回结果超过一行时,就需要一个显式游标: REF游标:动态关联结果集的临时对象 静态游标Cursor:隐式游标/显示游标 游标是内存中的一个区域,在DML语句运行时打开,完成后关闭 判断隐式游标的属性 隐式游标 执行DML操作,返回游标情况 declare begin update scott.emp se…
PL/SQL游标 Oracle会创建一个存储区域,被称为上下文区域,用于处理SQL语句,其中包含需要处理的语句,例如所有的信息,行数处理,等等. 游标是指向这一上下文的区域. PL/SQL通过控制光标在上下文区域.游标持有的行(一个或多个)由SQL语句返回.行集合光标保持的被称为活动集合. 可以命名一个光标,它可以在程序中获取和处理SQL语句,一次返回的行引用.有两种类型的游标: 隐式游标 显式游标 隐式游标 Oracle在一个SQL语句的执行,当没有显式游标的语句隐式游标时自动创建.程序员无法…
参考文章:https://www.cnblogs.com/huyong/archive/2011/05/04/2036377.html 在 PL/SQL 程序中,对于处理多行记录的事务经常使用游标来实现 使用有四个步骤:定义.打开.提取.关闭 例子: 09:52:04 SCOTT@std1> DECLARE 09:52:07 2 CURSOR c_cursor 09:52:07 3 IS SELECT ename, sal 09:52:07 4 FROM emp 09:52:07 5 WHERE…
*****************************************   PLSQL基本结构 ***************************************** 基本数据类型变量      1. 基本数据类型      Number 数字型       Int 整数型       Pls_integer 整数型,产生溢出时出现错误       Binary_integer 整数型,表示带符号的整数       Char 定长字符型,最大255个字符       Va…
基本数据类型变量 1. 基本数据类型     Number 数字型     Int 整数型     Pls_integer 整数型,产生溢出时出现错误 Binary_integer 整数型,表示带符号的整数     Char 定长字符型,最大255个字符     Varchar2 变长字符型,最大2000个字符     Long 变长字符型,最长2GB     Date 日期型     Boolean 布尔型(TRUE.FALSE.NULL三者取一)     在PL/SQL中使用的数据类型和Or…
*****************************************  PLSQL基本结构*****************************************基本数据类型变量 1. 基本数据类型    Number 数字型     Int 整数型     Pls_integer 整数型,产生溢出时出现错误     Binary_integer 整数型,表示带符号的整数     Char 定长字符型,最大255个字符     Varchar2 变长字符型,最大2000个…
基于ORACLE9i+PL/SQLDeveloper7.1.4) 课程 一 PL/SQL 基本查询与排序 本课重点: 1.写SELECT语句进行数据库查询 2.进行数学运算 3.处理空值 4.使用别名ALIASES 5.连接列 6.在SQL PLUS中编辑缓冲,修改SQL SCRIPTS 7.ORDER BY进行排序输出. 8.使用WHERE 字段. 一.写SQL 命令: 不区分大小写. SQL 语句用数字分行,在SQL PLUS中被称为缓冲区. 最后以:或 / 结束语句. 也可以用RUN来执行…
课程 一 PL/SQL 基本查询与排序 本课重点: 1.写SELECT语句进行数据库查询 2.进行数学运算 3.处理空值 4.使用别名ALIASES 5.连接列 6.在SQL PLUS中编辑缓冲,修改SQL SCRIPTS 7.ORDER BY进行排序输出. 8.使用WHERE 字段. 一.写SQL 命令: 不区分大小写. SQL 语句用数字分行,在SQL PLUS中被称为缓冲区. 最后以:或 / 结束语句. 也可以用RUN来执行语句 二.例1:SQL> SELECT dept_id, last…
SQL99是什么 (1)是操作所有关系型数据库的规则 (2)是第四代语言 (3)是一种结构化查询语言 (4)只需发出合法合理的命令,就有对应的结果显示 SQL的特点 (1)交互性强,非过程化 (2)数据库操纵能力强,只需发送命令,无需关注如何实现 (3)多表操作时,自动导航简单,例如: select emp.empno,emp.sal,dept.dname from emp,dept where emp.deptno = dept.deptno (4)容易调试,错误提示,直接了当 (5)SQL强…
存储过程是保存可以接受或返回用户提供参数的SQL语句集合.在日常的使用中,经常会遇到复杂的业务逻辑和对数据库的操作,使用存储过程可以进行封装.可以在数据库中定义子程序,然后把子程序存储在数据库服务器,之后通过名称调用. 特点 1 提高性能 存储过程是预先编译过,进行优化后,存储在SQL的内存中,使用的时候不需要重新编译,提高工作效率. 2 减少网络流量 存储过程的代码直接存储在数据库中,用户通过名称进行调用,减小网络流量,加快执行速度.如:百万以上的数据查询,存储过程分页要比其他方式的分页快得多…
1)掌握PLSQL程序设计 2)掌握存储过程,函数和触发器 3)了解一些oralceSQL语句优化方案 -------------------------------------------------------------------------------------准备篇 col empno for 9999;col ename for a10;col job for a10;col mgr for 9999;col hiredate for a12;col sal for 9999;c…
5.1 异常处理概念 5.1.1 预定义的异常处理 5.1.2 非预定义的异常处理 5.1.3 用户自定义的异常处理 5.1.4  用户定义的异常处理 5.2 异常错误传播 5.2.1 在执行部分引发异常错误 5.2.2 在声明部分引发异常错误 5.3 异常错误处理编程 5.4  在 PL/SQL 中使用 SQLCODE, SQLERRM异常处理函数 即使是写得最好的PL/SQL程序也会遇到错误或未预料到的事件.一个优秀的程序都应该能够正确处理各种出错情况,并尽可能从错误中恢复.任何ORACLE…
注:本文来源于 < Oracle学习笔记 --- Oracle ORA错误解决方案 > ORA-00001: 违反唯一约束条件 (.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常.ORA-00017: 请求会话以设置跟踪事件ORA-00018: 超出最大会话数ORA-00019: 超出最大会话许可数ORA-00020: 超出最大进程数 ()ORA-00021: 会话附属于其它某些进程:无法转换会话ORA-00022: 无效的会话 ID:访问被拒绝ORA-00023: 会话引用进…
5.1 异常处理概念 5.1.1 预定义的异常处理 5.1.2 非预定义的异常处理 5.1.3 用户自定义的异常处理 5.1.4  用户定义的异常处理 5.2 异常错误传播 5.2.1 在执行部分引发异常错误 5.2.2 在声明部分引发异常错误 5.3 异常错误处理编程 5.4  在 PL/SQL 中使用 SQLCODE, SQLERRM异常处理函数 即使是写得最好的PL/SQL程序也会遇到错误或未预料到的事件.一个优秀的程序都应该能够正确处理各种出错情况,并尽可能从错误中恢复.任何ORACLE…
分类: Oracle 5.1 异常处理概念 5.1.1 预定义的异常处理 5.1.2 非预定义的异常处理 5.1.3 用户自定义的异常处理 5.1.4 用户定义的异常处理 5.2 异常错误传播 5.2.1 在执行部分引发异常错误 5.2.2 在声明部分引发异常错误 5.3 异常错误处理编程 5.4 在 PL/SQL 中使用 SQLCODE, SQLERRM异常处理函数 即使是写得最好的PL/SQL程序也会遇到错误或未预料到的事件.一个优秀的程序都应该能够正确处理各种出错情况,并尽可能从错误中恢复…
参考地址 ORA-00001: 违反唯一约束条件 (.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常.ORA-00017: 请求会话以设置跟踪事件ORA-00018: 超出最大会话数ORA-00019: 超出最大会话许可数ORA-00020: 超出最大进程数 ()ORA-00021: 会话附属于其它某些进程:无法转换会话ORA-00022: 无效的会话 ID:访问被拒绝ORA-00023: 会话引用进程私用内存:无法分离会话ORA-00024: 单一进程模式下不允许从多个进程注册…
说明:SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML, 数据定义语言DDL,数据控制语言DCL. 0.调试 点击procedure名,右键选择调试.即可进入调试模式.找到procedure,点击右键,查看,可看到编译错误信息. Dbms_output.Put_line('打印内容:' || v_total); --打印 v_str:=&dno: 其中 &表示键盘输入.即接收键盘输入的值dno表示Name. 1.基本用法 查看所有的存储过程: select object_na…
Oracle 错误大全 ORA-00001: 违反唯一约束条件 (.)ORA-00017: 请求会话以设置跟踪事件ORA-00018: 超出最大会话数ORA-00019: 超出最大会话许可数ORA-00020: 超出最大进程数 ()ORA-00021: 会话附属于其它某些进程:无法转换会话ORA-00022: 无效的会话 ID:访问被拒绝ORA-00023: 会话引用进程私用内存:无法分离会话ORA-00024: 单一进程模式下不允许从多个进程注册ORA-00025: 无法分配 ORA-0002…
在 Oracle中使用Sql必须弄懂分析函数 Oracle开发专题之:分析函数(OVER) 1 Oracle开发专题之:分析函数2(Rank, Dense_rank, row_number) 6 Oracle开发专题之:分析函数3(Top/Bottom N.First/Last.NTile) 10 Oracle开发专题之:窗口函数 14 Oracle开发专题之:报表函数 20 Oracle开发专题之:分析函数总结 22 Oracle开发专题之:26个分析函数 24 PLSQL开发笔记和小结 28…
ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常. ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程:无法转换会话 ORA-00022: 无效的会话 ID:访问被拒绝 ORA-00023: 会话引用进程私用内存:无法分离会话 ORA-00024: 单一进程模式下不允许从多个…
Oracle 错误总结及问题解决 ORA     本文转自:https://www.cnblogs.com/zhangwei595806165/p/4972016.html  作者@承影剑 ORA-00001: 违反唯一约束条件 (.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常.ORA-00017: 请求会话以设置跟踪事件ORA-00018: 超出最大会话数ORA-00019: 超出最大会话许可数ORA-00020: 超出最大进程数 ()ORA-00021: 会话附属于其它某些…
在PLSQL块中执行SQL语句 A.   数据定义DDL: create,drop,truncate,不能直接执行,truncate执行时只做数据删除,不写日起,不维护索引 在PLSQL块中执行字符串SQL语句 注意:在PL/SQL块中可以直接执行,通常没有必要,除非表名和字段名是动态的. Execute immediate “DDL语句” Execute immediate “select 语句” into 变量名 DECLARE my_sql VARCHAR2(200); my_row em…
************************************************************************   ****原文:blog.csdn.net/clark_xu 徐长亮的专栏 ************************************************************************ PLSQL是ORACLE在标准SQL基础上添加了过程化处理,把DML和SELECT语句组织在PLSQL代码的过程性单元中. PLS…
初学者可以从查询到现在的pl/sql的内容都可以在我这里的笔记中找到,希望能帮到大家,视频资源在 资源, 我自己的全套笔记在  笔记 在pl/sql中可以继续使用的sql关键字有:update delete insert select--into commit  rollback savepoint   ,在这里需要注意的是查询跟以前有些不一样了 plsql由三个块组成:声明部分,执行部分,异常处理部分 declare:在此声明pl/sql用到的变量,类型及游标,以及局部的存储过程的和函数 be…
--触发器 drop table emp_log create table emp_log( empno number, log_date date, new_salary number, action ) --动作记录 ); create or replace trigger log_sal_adj after update of sal on emp --指定当update执行后,监控对emp表sal列的更改 before or adter for each row --每update一行执…
  PL/SQL PL/SQL 简介 每一种数据库都有这样的一种语言,PL/SQL 是在Oracle里面的一种编程语言,在Oracle内部使用的编程语言.我们知道SQL语言是没有分支和循环的,而PL语言是为了补充SQL语言的,是带有了分支和循环的语言. PL/SQL 语法 基本数据类型声明 declare v_name varchar2(20); v_temp number(1); v_count binary_integer := 0; v_sal number(7,2) := 4000.00…
--从键盘输入一个数 accept b prompt '请输入一个大于零的数字'; declare anum number := &b; begin loop dbms_output.put_line(anum); anum:; end loop; end; declare v_num number; begin -- 从stsu表中选出id最大的值,并根据该值打印次数 select max(id) into v_num from stsu; loop dbms_output.put_line(…
显式游标的处理过程包括: 声明游标,打开游标,检索游标,关闭游标. 声明游标 CURSOR c_cursor_name IS statement; 游标相当于一个查询结果集,将查询的结果放在游标里,方便在块里进行处理. 记录 一个记录就是一个复合的数据结构,相当于结果集里的一行数据,用于遍历游标时存放结果.记录支持三种定义:基于表,基于游标,自定义. 如果是基于表或游标,其定义格式为: record_name table_name or cursor_name%ROWTYPE; 打开游标 OPE…
分类: Oracle 1. PL/SQL里的游标可以分为显式和隐式两种,而隐式有分为select into隐式游标和for .. in 隐式游标两种.所以,我们可以认为,有3种游标用法: A. 显式游标 普通显式游标 代码: );begin open c ; loop    fetch c into l_tname ;    exit when c%notfound ;     dbms_output.put_line(l_tname);end loop;close c;end;/.... Bu…