Buscar dados em dois bancos diferentes

Delphi

18/04/2006

Olá pessoal.

Estou com uma dúvida trabalhando com mais de um banco de dados ao mesmo tempo. Oracle e SQL Server


No Oracle existe uma tabela de clientes, com código e nome, entre outros campos.
No SQL existe uma tabela que armazena alguns dados adicionais desses clientes, e possui apenas o código do mesmo, fazendo referência à tabela existente no Oracle para pegar o nome.

Utilizando tables, Queries com os campos de Lookup consigo trabalhar normalmente, retornando e exibindo o nome do cliente quando abro a tabela o SQL. Mas o problema ocorre quando preciso fazer uma busca pelo nome do cliente.

Preciso retornar os dados existentes na tabela do SQL, mas buscando apenas pelo nome do cliente, que está no Oracle. Como são bancos diferentes, não consigo fazer nenhuma ligação entre os dois. Alguém conhece alguma maneira de se fazer isso?

Faço a busca sempre utilizando um TADOQuery, utilizando um select conforme a pessoa vai digitando os dados na tela. Alguém conhece alguma maneira para que eu possa fazer essa busca??

Qualquer informação adiocional que alguem precisar me avise.

Obrigado.


Prgdelphi

Prgdelphi

Curtidas 0

Respostas

Rafael Gomes

Rafael Gomes

18/04/2006

bom amigo, imaginei uma forma de se fazer isso utizando ADO ...
nao sei se dará certo, teste e depois poste o resultado ...

se os campos identificadores das tabelas (chaves primarias) tiverem o mesmo nome em ambos os bancos tente fazer o seguinte ...

- insira 2 querys, 2 DataSources ... a primeira query será do ORACLE, a segunda do SQL Server ...
- conecte cada query a seu respectivo objeto de conexao
- configure a propriedade DataSource da segunda query com o nome do DataSource da primeira ...

agora as instrucoes SQL deveriam ficar assim ...

primeira query

select * from clientes

segunda query

select * from detalhe_clientes where codcliente = :codcliente

nunca testei isso dai ... mas pode ser que funcione pela forma como o ADO trata esse tipo de estrutura ...

caso isso nao funcione, imagino que voce só teria outra opcao, que seria pegar o codigo do cliente da tabela Oracle, e pesquisar depois na tabela do SQL Server ... o problema é que a consulta deve se restringir a apenas uma linha de resultado ... feito isso, é só montar na mao um jeito de apresentar os resultados obtidos ....

seria mais ou menos isso ...

qualquer duvida poste novamente ...

[..] s


GOSTEI 0
POSTAR