datasetleri birleştirip dbgridde göstermek mümkünmü?

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

datasetleri birleştirip dbgridde göstermek mümkünmü?

Mesaj gönderen forumsad »

Kod: Tümünü seç


DMoyunlar.DataSource1.DataSet:=DMoyunlar.IBQuery1;
DMoyunlar.DataSource2.DataSet:=DMoyunlar.IBQuery2;


//frmGunSonu.DBGrid1.DataSource:=DMoyunlar.DataSource1;
yukardaki şekilde 2 dataseti nasıl birleştirip dbgridde gösteririz

araştırma yaptığımda c# için örnekler var
delhi için hangi şekilde araştırma yapalım hangi kodu araştıralım (merge gibi)

görüş önerisi olan arkadaşlar var mı acaba

saygılarımla..
erdogan_ozkaya
Üye
Mesajlar: 839
Kayıt: 03 Eki 2007 02:00

Re: datasetleri birleştirip dbgridde göstermek mümkünmü?

Mesaj gönderen erdogan_ozkaya »

tablolarımı birleştirmek istiyorsun ?
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

Re: datasetleri birleştirip dbgridde göstermek mümkünmü?

Mesaj gönderen forumsad »

2 ayrı veritabanım var farklı klasörlerde
ama alanlar birbirinin aynısı

Kod: Tümünü seç

DMoyunlar.IBDatabase1.Connected:=false;
DMoyunlar.IBDatabase1.DatabaseName:=_ip1+':'+_laneDbyol_1+'\system\vt\OYUNLAR.FDB';
DMoyunlar.IBDatabase1.Connected:=True;
DMoyunlar.IBQuery1.close;
DMoyunlar.IBQuery1.SQL.Clear;
DMoyunlar.IBQuery1.SQL.Add('select * from TBL_OYUNLAR where TARIH LIKE ''%'+trh+'%'' ');
DMoyunlar.IBQuery1.Open;
DMoyunlar.DataSource1.DataSet:=DMoyunlar.IBQuery1;
frmGunSonu.DBGrid1.DataSource:=DMoyunlar.DataSource1;
ilk veritabanımdaki tablomu yukardaki kodla çekip datasete atarak dbgridde gösteriyorum...sorunsuz çalışıyor...

ama aynı dbgridde diğer veritabanındaki bilğileride alıp göstermem lazım yani 2 ayrı veritabanı 2 ayrı tablo(alanlar aynı) bilğilerini

tekbir dbgrid içinde göstermek istiyorum..

sayılarımla
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: datasetleri birleştirip dbgridde göstermek mümkünmü?

Mesaj gönderen aslangeri »

s.a.
c# daki grid yapısı ile delphideki yapı biraz farklı olduğu için delphide c# daki gibi yapamazsın.
TempTable işini çözebilir.
iki dataset deki kayıtları okuyup temptable a atarsın. gridde temptable ı gösterirsin. hatta temptablona bir alandaha ekleyerek satırın hangi datasetten geldiğini tutarsın.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

Re: datasetleri birleştirip dbgridde göstermek mümkünmü?

Mesaj gönderen forumsad »

hocam delphii için internette ne ingilizce ne de türkçe kaynak bulamadım basit bir örnek verebilirmisiniz veya şurda örnek var oraları incele diyebilirmisiniz..

saygılarımla..
forumsad
Üye
Mesajlar: 296
Kayıt: 29 Tem 2010 10:47

Re: datasetleri birleştirip dbgridde göstermek mümkünmü?

Mesaj gönderen forumsad »

sorunu geçici olarak şu şekilde çözdüm;
aynı procedure içinde önce tablo1 e bağlandım sorgu dönüşlerini stringgrid içine attım..

hemen arkasından tablo2 ye bağlanıp dönen sonuçları string gridde kaldığım yerden eklemeye devam ettim...işimi gördü ama

TempTable iile ilğili bir basit örnek uygulama çok iyi olurdu doğrusu


saygılarımla
thelvaci
Kıdemli Üye
Mesajlar: 770
Kayıt: 11 Tem 2010 07:17
Konum: Istanbul
İletişim:

Re: datasetleri birleştirip dbgridde göstermek mümkünmü?

Mesaj gönderen thelvaci »

İki ayrı database demişsiniz, eğer database'ler SQL Server'da olsa idi OPENROWSET yada linked server yada aynı server üzerinde ise SELECT .. FROM DB1.dbo.Table UNION ALL SELECT .. FROM DB2.dbo.Table gibi kullanımlar önerebilirdim, ama Interbase yahut Firebird hakkında pek bilgim yok. Bu durumda, Delphi tarafında bir memory dataset kullanabilirsiniz. Örneğin TClientDataSet bileşenine bakabilirsiniz.
Cevapla