第六篇理论课游标管理.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《Oracle 数据库应用 》理论课 第6 章 游标管理  本章技能目标  掌握游标管理技巧 1. 游标简介 游标是构建在 PL/SQL 中,用来查询数据,获取记录集合的指针。它可以让开发者一次访问结 果集中的一行。游标可以以编程的方式访问数据。从而完成需要分别在结果集中每个记录上执 行的过程代码的任务。 在Oracle 中提供了两种游标类型。他们是:静态游标,REF 游标。 静态游标:静态游标是在编译时知道其SELECT 语句的游标。静态游标有分为两种类型:隐式 游标和显示游标。 REF 游标:很多时候用户需要为游标使用的查询直到运行的时候才能确定,可以使用REF 游标 (引用游标)和游标变量满足这个要求。为了使用引用游标,必须声明游标变量。有两种类型 的REF 游标,强类型REF 游标和弱类型REF 游标。 2. 隐式游标 PL/SQL 为所有SQL 数据操纵语句(包括返回一行的SELECT )隐式声明游标,称为隐式游标 的原因是用户不能直接命名和控制此类游标。当用户在PL/SQL 中使用数据操纵语言(DML ) 时 ,Oracle 预先定义一个名为 SQL 的隐式游标,通过检查隐式游标的属性可以获得最近执行 的DML 语句的信息。 隐式游标的属性有:  %FOUND – SQL 语句影响了一行或多行时为 TRUE  %NOTFOUND – SQL 语句没有影响任何行时为TRUE  %ROWCOUNT – SQL 语句影响的行数  %ISOPEN - 游标是否打开,始终为FALSE 当执行一条DML 语句后,DML 语句的结果保存在四个游标属性中,这些属性用于控制程序流 程或者了解程序的状态。当运行DML 语句时,PL/SQL 打开一个内建游标并处理结果,游标是 维护查询结果的内存中的一个区域,游标在运行DML 语句时打开,完成后关闭。 第6 章 游标管理 隐式游标只使用SQL%FOUND,SQL%NOTFOUND,SQL%ROWCOUNT 三个属性.SQL%FOUND,SQL%NOTFOUND 是布尔值,SQL%ROWCOUNT 是整数值 1. %FOUND 只有DML 语句影响了一行或多行时%FOUND 属性才返回 TRUE 例1 演示使用%FOUND 游标属性的用法。 例1: SQL SET SERVEROUTPUT ON SQL BEGIN UPDATE toys SET toyprice=270 WHERE toyid= P005; IF SQL%FOUND THEN DBMS_OUTPUT.PUT_LINE(‘表已更新); ELSE DBMS_OUTPUT.PUT_LINE(‘编号未找到); END IF; END; / 例 1 使用了%FOUND 属性,如果WHERE 子句中给出的条件得到满足,将更新toys 表并输出 “表已更新”,否则输出“编号未找到”。 在执行任何DML语句前SQL%FOUND和SQL%NOTFOUND的值都是NULL,在执行DML语句 后,SQL%FOUND的属性值将是:  . TRUE :INSERT  . TRUE :DELETE和UPDATE,至少有一行被DELETE或UPDATE.  . TRUE :SELECT INTO至少返回一行 当SQL%FOUND 为TRUE 时,SQL%NOTFOUND 为FALSE。 2. %NOTFOUND %NOTFOUND 属性与%FOUND 属性的作用正好相反。如果 DML 语句没有影响到任何行, 则%ROWCOUNT 属性返回0 。 例1-1 演示使用%NOTFOUND 游标属性的用法。 例1-1: SQL SET SERVEROUTPUT ON SQL DECLARE v_TOYID TOYS.ID%type := TOYID; v_TOYNAME TOYS.NAME%Ty

文档评论(0)

xiaofei2001128 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档