Boa tarde,
O ambiente para a comunicação entre o Oracle 9i e o Sql Server 2008 foi criado usando o heterogeneous services e esta funcionando corretamente quando são feitas consultas nas tabelas do Sql Server.
O detalhe é que preciso fazer a atualização do Sql Server baseado em tabelas do Oracle.
Para isso, criei uma procedure que através de cursores faz a pesquisa dos dados e depois executa o insert ou update no Sql Server.
O problema é que o processo é iniciado mas depois de um certo tempo em execução o mesmo fica travado.
Exemplo do processo:
Procedure 1
Cursor Busca_empresas is
begin
select nomecliente, cep, cnpj, ……
from tabclientes
order by nomecliente;
for lnZ in Busca_empresas loop
procedure2(nomecliente, cep, cnjg);
end loop;
end procedure1;
Na PROCEDURE2 há um outro cursor que busca os registros dos funcionários conforme a empresa informada pela PROCEDURE1.
Este cursor retorna os dados do funcionário, que é verificado se o mesmo
existe na tabela do Sql Server. Caso não exista faz o insert, se existir faz o update.
O total de empresas que a PROCEDURE1 retorna é 443 e a média de funcionários que o cursor da PROCEDURE2 retorna é 600.
Alguém tem ideia do que pode estar ocorrendo? É possível monitorar para identificar o problema?
Há alguma restrição em usar CURSOR com o heterogeneous services?
Obrigado.
Airton