函数

原创 2012年03月30日 17:09:24

函数的结构:
  function [schema.]function_name
   [(parameter [, ...])]             --参数列表
   return return_datatype            --返回数据类型
   [authid {definer | current_user}] --指定使用定义者权限还是调用者权限
   [deterministic]                   --系统为函数的返回值保留一个复制,优化器决定使用保留的复制还是重新执行。
   [parallel_enable n]               --在select调用函数时可以并行处理
   [prpellned]                       --函数的结果应该通过pile row命令多次返回
   [result_cache ...]                --指定函数的输入值和返回值都要保存在函数结果缓存中
  is
   [declaration statements]          --声明部分,可选。
  begin
   executable statements             --可执行部分,至少有一个return
  [exception
   exception handlers]               --异常处理句柄,可选
  end [function_name];

函数头:is以上部分。通常包括函数名,参数列表,返回数据类型,有关函数定义和行行为的修饰符。
函数体:is以下部分。通常包括声明部分(可选)、可执行部分、异常处理部分(可选)。在可执行部分至少包含一个return语句。

return语句:在函数的可执行部分必须包含一个return语句,当然也可以由多个,但函数只执行一个return语句。当第一个return语句执行之后,函数立即终止执行,并把控制权            交还给调用的pl/sql块。return语句决定了函数的返回值。
            函数头部的return指定了返回的数据类型,而可执行部分的return语句才是返回的真正值。
            函数体中return语句的返回值的数据类型必须和函数头中指定的返回数据类型相兼容。
            关于多个return语句:函数体中可以有多个return语句,但只有一个会被执行。如果不确定返回哪个值,可以使用变量,在函数的最后返回该变量

end标签:可以直接写 end;,但最好在end后写上函数的名字,这是好的习惯。

返回的数据类型:可以返回任何数据类型,但不能返回异常
函数的调用:过程可以作为一个独立的可执行语句被执行,但函数不可以,函数只能作为pl/sql语句的一部分被调用。
不带参数的函数:对于不带参数的函数,在调用时可以加括号(),也可以不加括号。

相关文章推荐

JS函数式编程-Functional JavaScript

  • 2017年11月12日 13:34
  • 8.46MB
  • 下载

halcon函数

  • 2017年11月01日 17:30
  • 118KB
  • 下载

Linux内核--网络协议栈深入分析(二)--sk_buff的操作函数

本文分析基于Linux Kernel 3.2.1 原创作品,转载请标明http://blog.csdn.net/yming0221/article/details/7972647 更多请查...
  • avrmcu1
  • avrmcu1
  • 2014年06月19日 09:40
  • 469

函数编程思想

  • 2017年11月13日 16:49
  • 21.4MB
  • 下载

Tolua使用笔记二:lua与C#的函数,变量交互方法

原文地址:http://blog.csdn.net/qq_30168505/article/details/52744478接着上一回的接着讲:案例三:到这里久终于到了大家最感兴趣的地方了,热更新的价...

python学习之路-基础篇-函数-day03

一.函数的基本语法和特性 1.定义一个函数三要素 1)使用关键字def 2)参数表 3)返回值return python中参数表和返回值不是必须要写的,是一个可选项 以下就是一个函数的简单...

C++实验之多态性和虚函数

  • 2017年11月07日 09:41
  • 1KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:函数
举报原因:
原因补充:

(最多只允许输入30个字)