[工学]数据库原理与技术程学先第二版第8章.ppt

[工学]数据库原理与技术程学先第二版第8章.ppt

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]数据库原理与技术程学先第二版第8章

R 4 游标 游标是其内部指向被处理的语句的指针或句柄。 Oracle中的游标有两种:显式游标、隐式游标。 显式游标是用CURSOR...IS命令定义的游标,可以对查询语句(SELECT)返回的多条记录进行处理。 隐式游标是在执行插入(INSERT)、删除(DELETE)、修改(UPDATE)和返回单条记录的查询(SELECT)语句时由PL/SQL自动定义的。 8.5 Oracle 10g PL/SQL编程 R 8.5 Oracle 10g PL/SQL编程 显式游标操作 打开游标 推进游标 关闭游标 声明显式游标 要在程序中使用游标,必须首先定义游标。 CURSOR 游标名 IS SELECE查询子句 R 8.5 Oracle 10g PL/SQL编程 打开显式游标 OPEN 游标名 提取游标数据 FETCH 游标名 INTO 变量1,变量2……变量n 或 FETECG 游标名 INTO BULK COLLECT INTO 列名1,列名2……[LIMIT rows] 当打开显式游标后,就可以使用FETCH语句来移动游标。 R 8.5 Oracle 10g PL/SQL编程 关闭显式游标 CLOSE 游标名 关闭游标,释放游标所占用的资源 。 游标的属性,只能使用在过程性语句中,而不能使用在SQL语句中。 %found %notfound %isopen %rowcount R 8.5 Oracle 10g PL/SQL编程 显式游标的FOR循环 当FOR循环开始时,游标自动读取结果集中的各行数据。 使用游标FOR循环的时候不能使用OPEN、FETCH和CLOSE语句。 隐式游标处理 PL/SQL可以隐式地打开SQL游标,并在它内部处理SQL语句 。 SQL游标用来处理INSERT、UPDATE、DELETE或返回一行的SELECT...INTO语句。 打开SQL游标之前,SQL游标的属性都为NULL。 R 8.5 Oracle 10g PL/SQL编程 游标变量 游标变量是一个引用类型(REF)的变量,可在运行时与不同的查询相关联 。 使用游标变量包括定义游标变量、打开游标变量、提取游标变量数据和关闭游标变量三个阶段。 声明游标变量 TYPE 游标变量类型名 IS REF CURSOR [RETURN 记录类型] 游标变量名 游标变量类型名 首先声明一个游标变量类型,再定义游标变量。 R 8.5 Oracle 10g PL/SQL编程 打开游标变量 OPEN 游标变量名 For SELECT子句 提取游标变量数据 FETCH 游标变量名 INTO {值} 关闭游标变量 CLOSE 游标变量名 该操作用来释放查询所占用的资源,没有释放游标变量占用的存储空间 。 R 5 异常处理 捕获系统异常并在EXCEPTION中捕获及处理自定义异常名,并手工抛出。 自定义异常,并在EXCEPTION中捕获及处理。 为没有没有命名的系统错误号声明异常,并在EXCEPTION中捕获及处理。 语法 EXCEPTION WHEN 条件语句1 THEN 语句序列1 …… WHEN OTHERS THEN 语句序列n 8.5 Oracle 10g PL/SQL编程 R 8.5 Oracle 10g PL/SQL编程 处理预定义异常 PL/SQL对常见的异常预定义了异常名,主要有case_not_found、cursor_already_open、dup_val_on、invalid_number、no_data_found、too_many_rows、zero_divided 处理用户定义异常 用户定义的异常必须由用户自己说明并使用RAISE语句显式地提出。异常名不能出现在赋值语句或SQL语句中。 为了处理未命名的内部异常,必须使用OTHERS处理程序或用伪指令EXCEPTION_INIT。 R 8.5 Oracle 10g PL/SQL编程 6 过程和函数 (1)子程序与过程 Oracle提供了4种子程序: 过程、函数; 包、触发器。 存储过程不能由SQL语句直接使用,只能通过EXECUT命令或PL/SQL程序块内部调用。 R 8.5 Oracle 10g PL/SQL编程 建立过程的语句格式 CREATE PROCEDURE 过程名 [({形参 [IN|OUT|IN OUT] 数据类型})] IS|AS[变量声明] BEGIN 过程体 END 过程名 说明:IN与OUT说明参数传递方向; IN表示参数传入过程,OUT表示结果从过程传出。 R 8.3 Oracle 10g的安全管理 创建角色 。 语句格式:C

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档