Ejecutar Job remoto a través de DbLink en Oracle

Necesito ejecutar desde una Base de Datos "A" un procedure que se encuentra en una Base de Datos "B" (Ambas en Oracle).
Las bases "A" y "B" están conectadas a través de un DbLink en ambos sentidos.
¿Esto es posible? De ser así, cómo se puede lograr.

3 respuestas

Respuesta
2
Esto tiene solución, los pasos son los siguientes:
1) El dblink debe estar presente y el usuario de conexión con el que se creo, tener permisos de ejecución para el procedure.
2) Desde la base de datos A, el stored procedure se ejecuta con
SQL> exec procedure@dblinknombre
Si lleva parámetros hay que ponerlos antes de '@', o se puede llamar desde código PL/SQL sin la partícula exec de sql*plus.
FOR i IN 1 to 100 LOOP
         procedure@dblinknombre;
Muchas gracias, así fue como lo resolví, previa revisión del dblink. Notar que el "@" se coloca antes de los parámetros y que el usuario con el que se conecta el DbLink debe tener permiso para ejecutar el procedure de la otra base.
EXEC owner.procedure@DbLink(parámetros);
Muchas gracias.
Respuesta
1
No lo he usado pero una vez que creaste el dblink podes referenciar al stored procedure como
proc@dblink(parametros), obviamente que tienes que tener bien creado el dblink y lo podes probar haciendo algún select * from tabla@dblink.
Muchas gracias, así fue como lo resolví, previa revisión del dblink.
<span style="white-space: pre;"> </span><span style="font-weight: bold;">EXEC <owner>.
<procedimiento>@<DbLink>(
<parámetros>);</span>
Saludos!
Respuesta
-1
Siento no haberte respondido antes pero traspapele la notificación. ¿Necesitas la información aun?
No hay problema.
Así fue como lo resolví, previa revisión del dblink. Notar que el "@" se coloca antes de los parámetros y que el usuario con el que se conecta el DbLink debe tener permiso para ejecutar el procedure de la otra base.
EXEC owner.procedure@DbLink(parámetros);
Muchas gracias.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas