oracle过程和函数有什么不同呢?
导读:这篇文章主要为大家详细介绍了oracle过程和函数有什么不同呢?,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望对大家学习或工作能有帮助。 oracle过程和函数的区别:1、oracle过程有零或者多个参...
这篇文章主要为大家详细介绍了oracle过程和函数有什么不同呢?,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望对大家学习或工作能有帮助。oracle过程和函数的区别:1、oracle过程有零或者多个参数,没有返回值,而oracle函数可以没有参数也可以有多个参数并由一个返回值;2、oracle过程是作为一个独立执行语句调用的,而oracle函数是作为合法的表达方式调用的。
本教程操作环境:windows10系统、Oracle 12c版、Dell G3电脑。
oracle过程和函数的区别是什么
1、Oracle过程和函数都以编译后的形式存放在数据库中
函数可以没有参数也可以有多个参数并有一个返回值。
过程有零个或多个参数,没有返回值。
2、函数和过程都可以通过参数列表接收或返回零个或多个值,函数和过程的主要区别不在于返回值,而在于他们的调用方式。
Oracle过程是作为一个独立执行语句调用的:
pay_involume(invoice_nbr,30,due_date);
函数以合法的表达式的方式调用:
order_volumn:=open_orders(SYSDATE,30);
创建过程的语法如下:
每个参数的语法如下
paramter_name mode datatype [(:=|DEFAULT) value]
扩展知识:
mode有三种形式:IN、OUT、INOUT。
IN表示在调用过程的时候,实际参数的取值被传递给该过程,形式参数被认为是只读的,当过程结束时,控制会返回控制环境,实际参数的值不会改变。
OUT在调用过程时实际参数的取值都将被忽略,在过程内部形式参数只能是被赋值,而不能从中读取数据,在过程结束后形式参数的内容将被赋予实际参数。
INOUT这种模式是IN和OUT的组合;在Oracle过程内部实际参数的值会传递给形式参数,形势参数的值可读也可写,过程结束后,形势参数的值将赋予实际参数
以上就是关于“oracle过程和函数有什么不同呢?”的相关知识,感谢各位的阅读,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注网络,小编每天都会为大家更新不同的知识。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: oracle过程和函数有什么不同呢?
本文地址: https://pptw.com/jishu/649981.html
