我刚刚偶然发现了 PL/SQL 中对象的概念,因此开始思考 Oracle PL/SQL 过程/函数和对象之间的区别。我需要知道它们的功能差异。
PS:我熟悉Java。
最佳答案
FUNCTION 允许使用 RETURN
语句返回值。
PROCEDURE没有这样的返回值。但是,可以通过将参数声明为 OUT
而不是默认的 IN
来返回值。还有一个IN OUT
。
OBJECT 是其他一些概念,与 PROCEDURE 和 FUNCTION 无关,更像是 Java 中的类定义。虽然这个比较有点弱。有一些关于 Oracle 对象的有用文档,例如此链接http://docs.oracle.com/cd/B28359_01/appdev.111/b28425/obj_types.htm
PACKAGE 虽然您没有要求,但应该提及。 Oracle 包包含函数和过程(以及更多)的集合。包由声明和包体组成。包声明中定义的内容可以从外部访问,其余部分是私有(private)的。
关于java - Oracle PL/SQL 中过程/函数和对象之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16378029/