Pular para o conteúdo
  • Este tópico contém 0 resposta, 1 voz e foi atualizado pela última vez 14 anos atrás por airoosp.
Visualizando 1 post (de 1 do total)
  • Autor
    Posts
  • #102882
    airoosp
    Participante

      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

    Visualizando 1 post (de 1 do total)
    • Você deve fazer login para responder a este tópico.