Select com tabelas de 2 bancos

Delphi

17/02/2006

Bom , eu uso Firebird.

Tenho uma tabela = Parametros(Banco1)
tabela = Dados(Banco2)

preciso fazer um select tipo assim:

[code]
Select id_Param(Banco1), Todos os campos(Banco2)
from Parametros, Dados
where Parametros.id_param = Dados.id_Param
[\code]

Ou com JOIN sei lá , o problema está em relacionar tabelas de bancos diferentes

obs: os 2 bancos são Firebird(.fdb)


Fabiano Góes

Fabiano Góes

Curtidas 0

Melhor post

Artur Barth

Artur Barth

21/03/2019

Se você estiver utilizando Delphi XE2 ou superior você pode utilizar alguns recursos do Firedac que permitem criar consultas SQL em objetos no Delphi.
Isso permite a você unir dois ClientsDataSet ou Queryes em uma consulta, consequentemente informações de bancos de dados diferentes.

1. Insira um componente FDLocalSQL;
2. Insira os dataset´s ligados aos N bancos que você queira, cada um com seus devidos SQL´s;
3. Ligue a propriedade LocalSQL de cada dataset no componente FDLocalSQl;
4. Insira um novo FDConnection com o Driver SQLLite;
5. Insira uma nova FDQuery no formulário;
6. Ligue o FDLocalSQL e a nova Query no FDConnection do item 4.0;
7. Nesse último FDQuery, insira o SQL referenciando a cada Query como sendo uma tabela. Ex.: SELECT NOME FROM FDQUERY1 JOIN FDQUERY2 ON (FDQUERY1.CAMPO = FDQUERY2.CAMPO);
8. Abra o último dataset.

Fonte:
https://pt.stackoverflow.com/questions/160537/firedac-como-usar-mesma-fdquery-em-mais-de-um-banco/160545
GOSTEI 1

Mais Respostas

Djorius

Djorius

17/02/2006

até onde eu sei não é possível fazer um select entre tabelas de bancos diferentes no firebird.


GOSTEI 0
Mrmarcelojr

Mrmarcelojr

17/02/2006

Kra, creio q isso naum seja possivel via SQL, mas você pode usar campo lookup do ClientDataSet. Não fica uma Brastemp, ms quebra o galho..... :lol:


GOSTEI 0
Vicente Santos

Vicente Santos

17/02/2006

como faço um select para relacionar dados de dois bancos seguidos ?
ex: tenho dois bancos com estrutura idêntica, queria fazer um select que saia os dados dos dois bancos seguidos.
obs: uso IBExpert.
GOSTEI 0
Vicente Santos

Vicente Santos

17/02/2006

como faço um select para relacionar dados de dois bancos seguidos ?
ex: tenho dois bancos com estrutura idêntica, queria fazer um select que saia os dados dos dois bancos seguidos.
obs: uso IBExpert.
NADA ?
GOSTEI 0
Kaue Schneider

Kaue Schneider

17/02/2006

Você poderia fazer algo parecido com isso

select * from Tabela1.dbo.NomedoBanco1 tb1, inner join Tabela2.dbo.NomedoBanco2 tb2 on tb1.intCodCliente = tb2.intCodCliente
where ....

Boa sorte!
GOSTEI 0
POSTAR