据我所知,只能将OUT或IN OUT参数用于过程,而不能用于函数。但是,在定义用户定义的聚合函数时,我发现了以下签名:
member FUNCTION ODCIAggregateIterate(self IN OUT DeviationImpl,
value IN NUMBER) RETURN NUMBER这似乎是一个函数,但是,它有一个IN OUT参数。谁能给我解释一下为什么这是可能的?
谢谢
发布于 2014-06-23 18:53:33
没有这样的限制。函数可以有OUT或IN OUT参数。
但是,Oracle建议不要使用它们。
OUT和IN OUT参数可防止在普通SQL中使用函数、标记为确定性函数或用作结果缓存函数。因此,如果要在SQL查询中使用该函数,这些类型的参数主要是一个问题。
您的示例甚至更具体:它是一个成员函数,而不是全局函数。
https://stackoverflow.com/questions/24363898
复制相似问题