请教下在oracle中procedure和function有何本质区别?

postgresql中
是只有fuction
没有procedure的
不知两者有何区别?
procedure的那些作用,是function永远无法做到的?

墨色风雨
浏览 164回答 2
2回答

元芳怎么了

1、标识符不同。函数的标识符为FUNCTION,过程为:PROCEDURE。2、函数中一般不用变量形参,用函数名直接返回函数值;而过程如有返回值,则必须用变量形参返回。3、过程无类型,不能给过程名赋值;函数有类型,最终要将函数值传送给函数名。4、函数在定义时一定要进行函数的类型说明,过程则不进行过程的类型说明。5、调用方式不同。函数的调用出现在表达式中,过程调用,由独立的过程调用语句来完成。6、过程一般会被设计成求若干个运算结果,完成一系列的数据处理,或与计算无关的各种操作;而函数往往只为了求得一个函数值

一只甜甜圈

function 可以使用在表达式中 x := func();procedure不能function 可以做为表达式 select func() from dual;procedure 不能function 不能BEGIN func();END;;procedure 可以
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Oracle