JDBC e Database Link Oracle

Pessoal,

Estou trabalhando com algumas consultas que preciso usar Database link do Oracle para trazer os resultados, funciona da seguinte maneira:

Caso eu não encontre um registro em uma filial vou buscar na outra e assim por diante.

Exemplo:

SELECT * FROM PRODUTO; (Banco local)
SELECT * FROM PRODUTO@FILIAL1.COM; (Filial 1)
SELECT * FROM PRODUTO@FILIAL2.COM; (Filial 2)
SELECT * FROM PRODUTO@FILIAL3.COM; (Filial 3)

Dúvida: Vocês conhecem algum PreparedStatement alternativo onde eu passe o Database link como parâmetro e ele concatene nas tabelas?

Caso alguém tenha alguma ideia diferente fique a vontade para opinar.

De antemão agradeço a ajuda.

Atenciosamente,

Fala amigo,

Então, me lembro de ter feito algumas querys em db link e não precisei alterar nada (a query fica como voce copiou ai) Só não esqueça de verificar se o usuário do banco tem permissão para acessar esse db link. Desconheço algo no java que você possa colocar os DB Link, no caso utilize a query da maneira que você postou ai. Qualquer problema, posta ai para podermos analisar.

Jonathan,

Eu postei as querys como exemplo, minhas consultas são grandes e achei meio feio colocar alguns if’s lá setando os dblink’s nas tabelas mas vou fazer uma função simples na própria classe para substituir na string.

Agradeço a ajuda.

Atenciosamente,

Neste caso, acho melhor voce fazer uma view ou uma procedure… Manipular query no java não recomendo muito porque a probabilidade de dar algum problema depois é maior (sem contar a manutibilidade). Mas se no caso for a melhor opção, manda ver :smiley: