• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Oracle过程与函数的区别分析

    Oracle过程和函数相信大家都比较了解,下面就为您详细介绍Oracle过程和函数二者之间的区别,希望可以让您对Oracle过程和函数有更深的认识。

    Oracle过程和函数都以编译后的形式存放在数据库中,函数可以没有参数也可以有多个参数并有一个返回值。过程有零个或多个参数,没有返回值。函数和过程都可以通过参数列表接收或返回零个或多个值,函数和过程的主要区别不在于返回值,而在于他们的调用方式。Oracle过程是作为一个独立执行语句调用的:

    pay_involume(invoice_nbr,30,due_date);

    函数以合法的表达式的方式调用:

    order_volumn:=open_orders(SYSDATE,30);

    创建过程的语法如下:

    CREATE [ OR REPLACE] PROCEDURE [schema.]procedure_name 
    [parameter_lister] 
    {AS|IS} 
    declaration_section 
    BEGIN 
    executable_section 
    [EXCEPTION 
    exception_section] 
    END [procedure_name] 

    每个参数的语法如下:

    paramter_name mode datatype [(:=|DEFAULT) value]

    mode有三种形式:IN、OUT、INOUT。

    IN表示在调用过程的时候,实际参数的取值被传递给该过程,形式参数被认为是只读的,当过程结束时,控制会返回控制环境,实际参数的值不会改变。

    OUT在调用过程时实际参数的取值都将被忽略,在过程内部形式参数只能是被赋值,而不能从中读取数据,在过程结束后形式参数的内容将被赋予实际参数。

    INOUT这种模式是IN和OUT的组合;在Oracle过程内部实际参数的值会传递给形式参数,形势参数的值可读也可写,过程结束后,形势参数的值将赋予实际参数。

    创建函数的语法和过程的语法基本相同,唯一的区别在于函数有RETUREN子句

    CREATE [ OR REPLACE] FINCTION [schema.]function_name 
    [parameter_list] 
    RETURN returning_datatype 
    {AS|IS} 
    declaration_section 
    BEGIN 
    executable_section 
    [EXCEPTION] 
    exception_section 
    END [procedure_name]

    在执行部分函数必须有哟个或多个return语句。

    在创建函数中可以调用单行函数和组函数,例如:

    CREATE OR REPLACE FUNCTION my_sin(DegreesIn IN NUMBER) 
    RETURN NUMBER 
    IS  
    pi NUMBER=ACOS(-1); 
    RadiansPerDegree NUMBER; 
     
    BEGIN 
    RadiansPerDegree=pi/180; 
    RETURN(SIN(DegreesIn*RadiansPerDegree)); 
    END 
    您可能感兴趣的文章:
    • Oracle 函数大全[字符串函数,数学函数,日期函数]
    • Oracle文本函数简介
    • Oracle 系统变量函数用法指南
    • Oracle to_char函数的使用方法
    • oracle中的trim函数使用介绍
    • Oracle to_date()函数的用法介绍
    • Oracle定义DES加密解密及MD5加密函数示例
    • oracle的nvl函数的使用介绍
    • Oracle排名函数(Rank)实例详解
    • Oracle数学相关函数小结
    上一篇:DBA 在Linux下安装Oracle Database11g数据库图文教程
    下一篇:Oracle to_char函数的使用方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Oracle过程与函数的区别分析 Oracle,过程,与,函数,的,区别,