Oracle中 存储过程,过程和函数有什么区别和联系

分别说一下过程和联系,不要复制别人的答案,谢谢了!... 分别说一下过程和联系,不要复制别人的答案,谢谢了! 展开
 我来答
ourecho100
推荐于2017-09-21
知道答主
回答量:5
采纳率:0%
帮助的人:8万
展开全部
过程:函数和存储过程的统称。

函数:有且仅有一个返回值,可以用于SQL语句中。 如:x := get_X(),select get_X() from dual,返回值为函数调用的结果。

存储过程:无返回值。要返回结果,必须声明为out参数。
如:sp_x(x,y,z),x和y为in类型参数,z为out/in out类型参数。

在oracle中,封装工具还有自定义类型、包等。包可以封装过程和函数,包头类似JAVA中的接口,包体类似JAVA中实现接口的类。
匿名用户
2019-12-07
展开全部
联系:1.创建语法结构相似,都可以携带多个传入参数和传出参数。
   2.都是一次编译,多次执行。
区别:1.存储过程定义关键字用procedure,函数定义用function。
   2.存储过程中不能用return返回值,但函数中可以,而且函数中必须有return子句。
   3.执行方式略有不同,存储过程的执行方式有两种(1.使用execute2.使用begin和end),函数除了存储过程的两种方式外,还可以当作表达式使用,例如放在select中(select f1() form dual;)。
总结:如果只有一个返回值,用存储函数,否则,一般用存储过程。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式