Pregunta

Necesito conseguir algunos datos de una db externa y hacer algunos cálculos con él en otro db, es posible conectarse a una db externa de un procedimiento almacenado? Gracias chicos.

PS.

Im utilizando Oracle y ambas bases de datos están en el mismo servidor.

¿Fue útil?

Solución

Se desea utilizar una base de datos de enlace (DBLink).

http: // www. stanford.edu/dept/itss/docs/oracle/10g/server.101/b10759/statements_5005.htm

http://psoug.org/reference/db_link.html

-- create tnsnames entry for conn_link
conn_link =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = perrito2)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVICE_NAME = orabase)
    )
  )


CREATE DATABASE LINK conn_user
USING 'conn_link';

SELECT table_name, tablespace_name FROM user_tables@conn_user; 

@conn_user en el extremo de un nombre de procedimiento o tabla le dirá al motor SQL PL / para consultar el enlace db especificado para esa información.

Otros consejos

Sí, se puede, se puede leer datos de cualquier base de datos utilizando dg4odbc. Cualquier base de datos ODBC complient puede ser conectado a la base de datos Oracle y siempre que éste pueda encontrar un controlador ODBC para la plataforma de trabajo a cabo. .odbc.ini y $ ORACLE_HOME / hs / admin son las ubicaciones de configuración.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a dba.stackexchange
scroll top