第13章PLSQL子程序.pptVIP

  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文档。上传文档
查看更多
子程序结构 在Toad中查看数据字典中的过程信息 子程序的优点 创建过程 创建函数 函数的RETURN语句 子程序参数 形参与实参 参数模式 形式参数几个方面 形式参数的约束 参数传递方式 参数默认值 使用NOCOPY编译提示 子程序进阶技术 在SQL中调用子程序 嵌套子程序 子程序的前向声明 重载子程序 子程序自治事务 递归调用子程序 理解子程序依赖性 子程序权限管理 1-* 北京源智天下科技有限公司 联系方式: 联系方式: 北京源智天下科技有限公司 PL/SQL从入门到精通视频 第十三讲:PL/SQL子程序 课程安排 子程序结构 子程序参数 子程序进阶技术 子程序简介 子程序的优点 创建过程 创建函数 RETURN语句 查看和删除子程序 除了可重用性之外,子程序还具有如下的几个优点: 提供模块化的功能:模块化是将一个大的代码块打散为多个小的易于管理的子程序,由其他模块调用,使得代码具有更强的可读性和可维护性。 更强的可管理性:大多数程序员都不愿意看到一个超过1000行的语句块这种写法,因为这管理相当困难,特别是在后期维护时。如果使用子程序,则可以将这1000行代码进行打散,提供各个子程序进行调用,方便了调试,同时又提供了较强的可管理性。 增强的可读性:每个子程序都具有描述性的命名,使得程序的阅读者很容易的了解子程序的功能,进而对整个程序容易理解和把所握,子程序使得阅读代码的人首先看到一个大的实现结构,而不用一开始就关注到具体的可执行语句的细节。 更强的稳定性:子程序便于调试,使得代码具有较少的错误。 [CREATE [OR REPLACE]] PROCEDURE procedure_name[(parameter[,parameter]...)] [AUTHID {DEFINER | CURRENT_USER}]{ IS | AS} [PRAGMA AUTONOMOUS_TRANSACTION;] [local declarations] BEGIN executable statements [EXCEPTION exception handlers] END [name] 函数与过程非常相似,都属于命名的语句块,语句结构非常相似,区别在于函数会具有一个返回值,而过程仅仅只是为了执行一系列的行为。在调用时,函数可以作为表达式的一部分进行调用,而过程只能作为一个PL/SQL语句进行调用。 函数的创建语法如下所示: [CREATE [OR REPLACE ] ] FUNCTION function_name [ ( parameter [ , parameter ]... ) ] RETURN datatype [AUTHID { DEFINER | CURRENT_USER } ] [PRAGMA AUTONOMOUS_TRANSACTION;] [ local declarations ] BEGIN executable statements [ EXCEPTION exception handlers] END [name]; 在过程或者是函数中都可以使用RETURN语句,但是2者之间有明显的区别: 在过程中RETURN语句不返回值,也不返回任何表达式,它的作用是立即退出过程的执行,将控制权返回给过程的调用者。 在函数中RETURN语句必须包含一个表达式,表达式的值会在RETURN语句执行时被计算,然后赋给在声明中的RETURN语句中指定的数据类型的变量,也就是函数标识符。再将控制权返回给调用者。 形参与实参 参数模式 形式参数的约束 参数传递方式 参数默认值 使用NOCOPY编译提示 参数分为2种类型: 形式参数:在定义子程序时,在定义语句中定义的参数称为形参。 实际参数:在调用子程序时,传入的具体参数值称为实参。 IN模式 OUT模式 IN OUT模式 在了解NOCOPY编译提示之前,首先理解一下引用传递和值传递之间的区别: 值传递:当参数通过值传递时,参数将从实际参数中被复制到了形式参数中。 引用传递:实际参数的指针被传递到了相应的形式参数中。 默认情况下,PL/SQL将通过引用来传递IN参数,引用传递的速度快,因为仅实际参数的指针传递到相应的形式参数中,不需要进行复制,这对于占用空间较大的参数,比如集合类型具有较高的效率。而IN OUT和OUT参数通过值进行除递,这主要是因为对实际参数的约束可以被校验,当子程序正常结束,被赋到OUT和IN OUT形参上的值就会拷贝到对应的实参上。 性格决定命运, 专注成就人生 源智天下 Oracle Database 10g: Administration Workshop II 1-* 1-* 北

文档评论(0)

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

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

1亿VIP精品文档

相关文档