Oracle - Ejecutar procedimiendo dinamico dependiendo esquema BD

 
Vista:

Ejecutar procedimiendo dinamico dependiendo esquema BD

Publicado por Huesitos (1 intervención) el 07/04/2017 20:03:58
Hola buenas, estaba mirando la documentación de Oracle y no he encontrado nada y la verdad no se como solucionarlo.... a ver si alguien me puede echar una manita :)

Os pongo en situación:

- Tengo dos bases de datos a las que llamaremos BD_A y BD_"X".
- La BD_"X" tiene un procedimiento: PROCEDIMENTO_BD_"X"(parametrosEntrada IN, parametrosSalida OUT).
- La BD_A tiene un procedimiento que llama a PROCEDIMENTO_BD_"X"(parametrosEntrada IN, parametrosSalida OUT).

La idea es:

Tengo una tabla que contiene una PK y luego un campo que se llama esquema. Obtenemos de esa tabla la BD a la que llamar y llamamos al procedimiento (claramente todas las BD_'X' tiene el procedimiento ya implementado y con los permisos adecuados tanto para BD_A como BD_'X').

Por lo tanto la idea para proceder que tengo ahora mismo es:

Declaro:
esquema VARCHAR2(2000)
sentencia VARCHAR2(2000)

Ejecución:
SELECT ESQUEMA_BD INTO esquema FROM TABLA WHERE PK = 1;
sentencia := esquema||.PROCEDIMIENTO_BD_"X"(parametrosEntrada IN, parametrosSalida OUT);
EJECUTE IMMEDIATE sentencia;

Y esto da error, ya que no se como pasar los parámetros ni de entrada ni de salida y ni si quiera si es correcto.

¿Alguna idea? Quizás se pueda hacer de otra manera y la desconozco :/

Si no entendéis algo avisadme. Muchas gracias adelantadas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder