Sim, isso é possível. As conexões no SQL Developer não ajudarão você - você terá que configurar um link do banco de dados do banco de dados Oracle para o banco de dados SQL Server.
Antes de criar um link de banco de dados, você terá que configurar um gateway heterogêneo para se conectar ao SQL Server.
As etapas gerais incluem:
-
Instale os drivers ODBC Oracle no servidor que acessará o banco de dados remoto do SQL Server usando o link do banco de dados.
-
Configure a conexão ODBC no banco de dados Oracle local usando o Windows ODBC Data Source Administrator
-
Teste os drivers ODBC para garantir que a conectividade seja feita com o banco de dados do SQL Server.
-
Configure os serviços Oracle Heterogeneous criando um arquivo initodbc.ora no banco de dados Oracle.
-
Modifique oListener.ora
Arquivo.
SID_NAME is the DSN for the remote database. ORACLE_HOME is the actual Oracle home file path. PROGRAM tells Oracle to use heterogeneous services. SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME=ora_sid) -- Enter the DSN on this line (ORACLE_HOME = c:\oracle10gdb) -- Enter your Oracle home on this line (PROGRAM = hsodbc) ) )
-
Modifique oTnsnames.ora file
apontar para a porta de entrada
(DESCRIPTION= (ADDRESS_LIST= (Address=(PROTOCOL=TCP) (HOST= -- (Server x) (PORT=1521))) -- Enter the port on which the server x Oracle installation -- is listening (CONNECT_DATA=(SID=Cas30c)) - Enter the DSN name (HS=OK) -- Enter this value. It tells Oracle to use hetergeneous services )
-
Recarregue o listener no banco de dados Oracle local
-
Crie um link de banco de dados na instalação local do Oracle que acesse a conexão heterogênea, que, por sua vez, se conecta ao SQL Server.
Depois que o link do banco de dados for criado, você poderá inserir no banco de dados usando um simples:
insert into <oracle_tablename>
select * from <sqlserver_table_name>@dblink_name
Leitura adicional:
- documentação do Oracle na conectividade de gateway heterogêneo
- documentação do Oracle sobre como criar links de banco de dados
- Fazendo uma conexão do Oracle para o SQL Server (este é um artigo ilustrado um pouco antigo, mas muito bom!)