Ver Mensaje Individual
  #8 (permalink)  
Antiguo 06/06/2008, 02:59
Avatar de matanga
matanga
 
Fecha de Ingreso: octubre-2007
Ubicación: España
Mensajes: 1.091
Antigüedad: 16 años, 6 meses
Puntos: 85
Respuesta: Acceder a un package de un usuario

Hola,

Para responder a tu pregunta te dejaria un link a la documentacion, pero todo el sitio de Oracle parece no funcionar, o talvez los nodos de Telefonica nos estan haciendo pasar un mal dia (otra vez).

En fin, con un db_link puedes conectar dos bases de datos Oracle, te dejo un pequeño ejemplo con la ejecucion de un procedimiento.

1. En mi base de datos 9I creo una tabla T1 y un procedimiento P1.

Código:
oracle@9I> create table t1 (id number(8));

Tabla creada.

oracle@9I> insert into t1 values (1);

1 fila creada.

oracle@9I>

oracle@9I> create or replace procedure p1
  2  as
  3  begin
  4  insert into t1 values (1);
  5  end;
  6  /

Procedimiento creado.
2. En mi base de datos 10G creo un database link que me conecta con 9I, lo que me permite hacer un select sobre la tabla T1 y ejecutar el procedimiento P1.

Código:
oracle@10G> create database link ora9i
  2  connect to oracle
  3  identified by xxx
  4  using '9I';

Enlace con la base de datos creado.

oracle@10G> select * from t1@ora9i;

        ID
----------
         1

oracle@10G>
oracle@10G> exec p1@ora9i;

Procedimiento PL/SQL terminado correctamente.

oracle@10G> select * from t1@ora9i;

        ID
----------
         1
         1

oracle@10G>
Un poco mas de info, que por supuesto encontraras en la documentacion

connect to usuario_de_base_de_datos_remota
identified by password_de_usuario
using 'entrada_del_tnsnames.ora';

Ten en mente la configuracion del tnsnames.ora de la base de datos donde se crea el db_link, ahi debe estar la informacion de como conectarse a la base de datos remota.

Saludos

Última edición por matanga; 07/06/2008 a las 10:10