Sumário

Search

  1. Prefácio
  2. Introdução às Transformações
  3. Portas de Transformação
  4. Caches de Transformação
  5. Transformação de Validador de Endereço
  6. Transformação de Agregador
  7. Transformação de Associação
  8. Transformação de Exceção de Registro Inválido
  9. Transformação de Conversor de Maiúsculas/Minúsculas
  10. Transformação de Classificador
  11. Transformação de Comparação
  12. Transformação de Consolidação
  13. Transformação de Mascaramento de Dados
  14. Transformação do Processador de Dados
  15. Transformação de Decisão
  16. Transformação de Exceção de Registro Duplicado
  17. Transformação de Expressão
  18. Transformação de Filtro
  19. Transformação Hierárquica para Relacional
  20. Transformação Java
  21. Referência da API da transformação Java
  22. Expressões Java
  23. Transformação de Associador
  24. Transformação de Gerador de Chaves
  25. Transformação de Rotulador
  26. Transformação de Pesquisa
  27. Caches de Pesquisa
  28. Cache de Pesquisa Dinâmica
  29. Transformação de Macro
  30. Transformação de Correspondência
  31. Transformações de Correspondência na Análise de Campos
  32. Transformações de Correspondência na Análise de Identidade
  33. Transformação Normalizador
  34. Transformação de Mesclagem
  35. Transformação de Analisador
  36. Transformação Python
  37. Transformação de Classificação
  38. Transformação de Leitura
  39. Transformação de Relacional para Hierárquica
  40. Transformação de Consumidor de Serviço da Web REST
  41. Transformação de Roteador
  42. Transformação de Gerador de Sequência
  43. Transformação de Ordenador
  44. Transformação SQL
  45. Transformação de Padronizador
  46. Transformação de União
  47. Transformação de Estratégia de Atualização
  48. Transformação de Consumidor de Serviço da Web
  49. Analisando Mensagens SOAP de Serviços da Web
  50. Gerando Mensagens SOAP de Serviços da Web
  51. Transformação de Média Ponderada
  52. Transformação de Janela
  53. Transformação de Gravação
  54. Apêndice A: Delimitadores de Transformação

Guia de Transformação do Developer

Guia de Transformação do Developer

Substituição SQL e Cache de Pesquisa Dinâmica

Substituição SQL e Cache de Pesquisa Dinâmica

Você pode adicionar uma cláusula WHERE à consulta de pesquisa para filtrar os registros usados para criar o cache e executar uma pesquisa na tabela de banco de dados para uma pesquisa sem cache. No entanto, o Serviço de Integração não usa a cláusula WHERE ao inserir linhas em um cache dinâmico.
Ao adicionar uma cláusula WHERE a uma transformação de Pesquisa usando cache dinâmico, conecte uma transformação Filtro antes da transformação de Pesquisa para filtrar linhas que você não queira inserir na tabela de destino ou do cache. Se você não incluir a transformação Filtro, poderá obter resultados inconsistentes entre o cache e a tabela de destino.
Por exemplo, você configura uma transformação de Pesquisa para realizar uma pesquisa dinâmica na tabela de funcionários EMP, correspondendo linhas por EMP_ID. Você define a seguinte substituição SQL de pesquisa:
SELECT EMP_ID, EMP_STATUS FROM EMP ORDER BY EMP_ID, EMP_STATUS WHERE EMP_STATUS = 4
Quando você executa pela primeira vez a
, o Serviço de Integração cria o cache de pesquisa da tabela de destino com base na substituição SQL de pesquisa. Todas as linhas no cache corresponderão à condição na cláusula WHERE,
EMP_STATUS = 4
.
Por exemplo, o Serviço de Integração lê uma linha de origem que atende à condição de pesquisa especificada, mas o valor de EMP_STATUS é 2. Embora o destino possa ter a linha onde EMP_STATUS é 2, o Serviço de Integração não encontra a linha no cache devido à substituição SQL. O Serviço de Integração insere a linha no cache e passa a linha para a tabela de destino. Quando o Serviço de Integração inserir essa linha na tabela de destino, você deverá ter resultados consistentes se a linha já existir. Além disso, nem todas as linhas do cache correspondem à condição da cláusula WHERE na substituição SQL.
Para verificar se você inseriu no cache apenas linhas que correspondam à cláusula WHERE, adicione uma transformação Filtro antes da transformação de Pesquisa e defina a condição de filtro como a condição na cláusula WHERE na Substituição SQL de Pesquisa.
Para o exemplo acima, digite a seguinte condição de filtro na transformação Filtro e a cláusula WHERE na substituição SQL:
EMP_STATUS = 4