Oracle - Recursive call caused by PL/SQL function

> Database > Oracle Database

1 - About

Oracle - Recursive Calls can also occur when you are calling a PL/SQL function from a SQL statement and this function :

  • executes many SQL statement itself
  • or refers to built-in functions such as USER

3 - Solution

A possible solution is to include the PL/SQL routine into the query itself :

  • by using a sub SELECT
  • by using a complex CASE statement

For pre-build function as USER, you can store them once per session in a global package variable and just refer to them instead.