Table'ları birleştirmek..

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
loxka
Üye
Mesajlar: 214
Kayıt: 18 Ağu 2003 01:10

Table'ları birleştirmek..

Mesaj gönderen loxka »

S.A.
İki ayrı makineye kurulmuş birebir aynı programın birtanesinin veri tabanına 450 kayıt girilmiş, diğerine ise 100 kayıt girilmiş. Alanlar her iki tableda da aynı.
Çözüm ne olmalı bilmiyorum.
Yardımlarınız için teşekkür ederim.
Kullanıcı avatarı
cuneyt22
Üye
Mesajlar: 213
Kayıt: 07 Şub 2004 03:32
İletişim:

Mesaj gönderen cuneyt22 »

kardeş datapump ile ekleyebilirsin ama sağlıklı aktarmayabiliyor bazen...sende küçük bi proğram yazıpta aktarabilirsin ama sitede
Datapump Diye aratırsan istediğin bilgilere ulaşacaksın..Kolay Gelsin
loxka
Üye
Mesajlar: 214
Kayıt: 18 Ağu 2003 01:10

Mesaj gönderen loxka »

datapump' a baktım ama dediğiniz gibi pek sağlıklı görünmüyor, küçük bir program için bilgi verirseniz sevinirim
shadowmann
Üye
Mesajlar: 508
Kayıt: 30 Oca 2004 10:49

Mesaj gönderen shadowmann »

Kod: Tümünü seç

var
b:integer; 
   while not kaynaktable.eof do
   begin
   hedefTable.Insert;
    for b:=0 to  kaynaktable.FieldCount-1 do
begin
hedefTable.Fields.Fields[b].AsString:=kaynaktable.Fields.Fields[b].AsString;
şeklinde
                                                          
[/quote]
loxka
Üye
Mesajlar: 214
Kayıt: 18 Ağu 2003 01:10

Mesaj gönderen loxka »

Kod: Tümünü seç

var 
b:integer; 
   while not (edit1'deki Text) eof do 
   begin 
.........
........
........  
edit 1'e istediğim table e open diyalogla gösterebiliyorum, peki hocam bu table kod içinde nasıl gösterebilirim
shadowmann
Üye
Mesajlar: 508
Kayıt: 30 Oca 2004 10:49

Mesaj gönderen shadowmann »

Sizin sorunuzdan örnegin databaseinde 10 tane tablo var ve bunu diğer db ye aktarıcaksınız şeklinde anlaşılıyor. Bu durumda önce dbdeki tabloları bir listboxa atın ve en başa bir döngü daha koyun.
Delphi 5 helphden: (Paradoxta klasör database oluyor.)

Kod: Tümünü seç

MyStringList := TStringList.Create;
try
  Session.GetTableNames('DBDEMOS', '*.db', False, False, MyStringList);
  ListBox1.Items = MyStringList;
finally
  MyStringList.Free;
end;

Kod: Tümünü seç

for i:=0 to listbox1.items.count-1 do
begin
kaynaktable name i listboxdaki seçili itemden alacaksın. 
bir önceki gönderdigim mesajdaki kodlar. 
end;
Yapamazsan çekinme tekrar yaz.
loxka
Üye
Mesajlar: 214
Kayıt: 18 Ağu 2003 01:10

Mesaj gönderen loxka »

Yapamazsan çekinme tekrar yaz.
Allah razı olsun :)

Hocam ben şöyle düşündüm, hani minik bir porogram yapim daha sonra da kullanırım bir şekilde lazım olur diye..
Forma 2 adet edit koydum ve birine kaynaktable diğerine hedeftable (sizin gönderediğiniz koda binaen) dedim.

Kod: Tümünü seç

procedure TForm1.Button1Click(Sender: TObject);
begin
if opendialog1.Execute then
begin
edit1.Text:=extractfilename(opendialog1.FileName);
end;
end;  

buton1'e bunu atayarak edit1'e yani (kaynaktable) istediğim table'ın ismini atıyorum. Örn: Hareket.DB

Aynı şeyi edit2 de de yaparak hedeftable'ın olduğu klasörden table'ı seçip adını atıyorum. Örn: Hareket.DB

buraya kadar tamam..

burada sizin gönderdiğiniz

Kod: Tümünü seç

var 
b:integer; 
   while not kaynaktable.eof do 
   begin 
   hedefTable.Insert; 
    for b:=0 to  kaynaktable.FieldCount-1 do 
begin 
hedefTable.Fields.Fields[b].AsString:=kaynaktable.Fields.Fields[b].AsString; 
şeklinde 
kodları bir şekilde derlemek istiyorum..
teşekkür ederim
Cevapla