??游标可以看做是数据的集合,可以通过游标获取其中的值,游标也可以看做是数据集合的指针,通过游标可以获取集合中的数据。??游标分为显示游标和隐式游标,它们都具有 %FOUND、%NOTFOUND、%ISOPEN、%ROWCOUNT四个属性。FOUND,NOTFOUND:表示是否找到数据。ISOPEN:判断游标是否打开。ROWCOUNT:返回SQL语句影响的行数,比如增删改。名称说明系统游标(隐式游标)系统定义好的游标,一般在做DML操作时自动触发,单条的SELECT COL ...
操作-oracle (游标-数据的缓冲区、视图-数据库中虚拟的表、存储过程-提高程序执行效率、触发性-保证数据的正确性、事务和锁-确保数据安全、控制文件和日志文件)标签:rac 虚拟 ora class -o log 过程 事务 数据安全 本文系统来源:https://www.cnblogs.com/smallpigger/p/8320875.html
??游标可以看做是数据的集合,可以通过游标获取其中的值,游标也可以看做是数据集合的指针,通过游标可以获取集合中的数据。
??游标分为显示游标和隐式游标,它们都具有 %FOUND、%NOTFOUND、%ISOPEN、%ROWCOUNT四个属性。FOUND,NOTFOUND:表示是否找到数据。
ISOPEN:判断游标是否打开。
ROWCOUNT:返回SQL语句影响的行数,比如增删改。名称说明
系统游标(隐式游标)系统定义好的游标,一般在做DML操作时自动触发,单条的SELECT ...
Sql代码
隐式游标的属性 返回值类型 意 义
SQL%ROWCOUNT 整型 代表DML语句成功执行的数据行数
SQL%FOUND 布尔型 值为TRUE代表插入、删除、更新或单行查询操作成功
SQL%NOTFOUND 布尔型 与SQL%FOUND属性返回值相反
SQL%ISOPEN 布尔型 DML执行过程中为真,结束后为假 隐式游标的属性 返回值类型 意 义
SQL%ROWCOUNT 整型 代表DML语句成功执行的数据行数
SQL%FOUND 布尔型 值为TRUE代表插入、删除、更新或单...
-- 声明游标;CURSOR cursor_name IS select_statement --For 循环游标 --(1)定义游标 --(2)定义游标变量 --(3)使用for循环来使用这个游标 declare --类型定义 cursor c_job is select empno,ename,job,sal from emp where job=‘MANAGER‘; --定义一个游标变量v_cinfo c_emp%ROWTYPE ,该类型为游标c_emp中的一行数据类型 c_row c_job%rowtype; begin for...
declare --类型定义 cursor c_eventstate is Select CampaignId,phonenumber,PolicyNumber from mkt_eventstate a where synstate =0 and packagestate = 2 and errorcode = 6; --定义一个游标变量v_cinfo c_emp%ROWTYPE ,该类型为游标c_emp中的一行数据类型 c_row c_eventstate%rowtype;begin for c_row in c_eventstate loop begin dbms_output.put_line(c_row....
declare --类型定义 strsql string(500); v_ErrorCode NUMBER; -- Variable to hold the error message code v_ErrorText VARCHAR2(200); -- Variable to hold the error message text cursor c_eventstate is Select CampaignId,phonenumber,PolicyNumber from mkt_eventstate a where synstate =0 and packagestate = 2 and errorcode = 6; --定义一个游...
;//可以反向索引。length不指定就到结尾
to_number(str);//str转number
select to_char(sysdate,‘yyyy-mm-dd hh24:mi:ss‘) from dual;//日期转字符
nvl(tt,0);//若是空值则为01. 游标
对于集合数据的处理,学会使用带参数的方式。同一个会话默认最多300个光标 set system set open_cursors=400 scope= {both;仅更改当前memory;spfile;重启生效}
//属性
//cus1%found cus1%notfound cus1%isopen cus1%rowcount影响行数
SET se...
为了处理SQL语句得到的信息,oracle必须要分配一片叫做上下文的区域来处理如上信息。游标是一个指向上下文的句柄或指针,通过游标,pl/sql可以控制上下文区域所得到的信息。
1.对于不同的SQL语句,游标的使用情况也不同
SQL语句 游标
非查询语句 隐式游标
结果是单行的查询语句 隐式或显示游标
结果是多行的查询语句 显示的
2.处理显示游标
dec...
--查询并打印员工的姓名和薪水
--set serveroutput on
/*
1、光标的属性%found:如果取到了记录就是true否则是false;%notfound:
*/
declare
--定义一个光标
cursor cemp is select ename,sal from emp;
--为光标定义对应的变量
pename emp.ename%type;
psal emp.sal%type;begin--打开光标open cemp;loop--取一条记录 into后面的顺序和定义光标后面的ename,sal顺序一致fetch cemp into pename,psal;--思考:1、循环什么时候退出?...
声明游标;CURSOR cursor_name IS select_statement--For 循环游标
--(1)定义游标
--(2)定义游标变量
--(3)使用for循环来使用这个游标
declare--类型定义cursor c_jobisselect empno,ename,job,salfrom empwhere job=‘MANAGER‘;--定义一个游标变量v_cinfo c_emp%ROWTYPE ,该类型为游标c_emp中的一行数据类型c_row c_job%rowtype;
beginfor c_row in c_job loopdbms_output.put_line(c_row.empno||‘-‘||c_row.ename||‘-...
create or replace procedure sp_addProjectQj( ret out number, flowid in number --流程Id) ascursor c_design is select * from LC_VR_Detail where lc_crm_visitreport_Id = flowid and dd_status != 2; c_row c_design%rowtype; v_id number;begin for c_row in c_design loop pnextid(‘T_XMSJQJ‘,v_id); --项目涉及器件(id,项目名称,器件) values --design明细表(v_id,项目名称,器件名称) ...
原文URL:http://www.2cto.com/database/201203/122387.html
ORACLE游标概念讲解
什么是游标? ①从表中检索出结果集,从中每次指向一条记录进行交互的机制。 ②关系数据库中的操作是在完整的行集合上执行的。 由SELECT 语句返回的行集合包括满足该语句的WHERE 子句所列条件的所有行。由该语句返回完整的行集合叫做结果集。 应用程序,尤其是互动和在线应用程序,把完整的结果集作为一个单元处理并不总是有效的。 ...
or replace procedure a
ascursor b(c_id int)is select * from d where id=c_id;beginopen b(111);end; Oracle游标带参数标签:本文系统来源:http://www.cnblogs.com/xushining/p/5448932.html
、查看系统配置游标数
select value from v$parameter where name = ‘open_cursors‘;2、查看游标使用情况
select o.sid, osuser, machine, count(*) num_curs
from v$open_cursor o, v$session s
where user_name = ‘XFTEST‘ and o.sid=s.sid
group by o.sid, osuser, machine
order by num_curs desc;3、根据游标占用情况分析访问数据库的程序在资源释放上是否正常,如果程序释放资源没有问题,则加大游标数。alter system se...