VeriTabanları Arasında Veri Transferi

Firebird ve Interbase veritabanları ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
sonuncusado
Üye
Mesajlar: 37
Kayıt: 13 May 2005 03:36

VeriTabanları Arasında Veri Transferi

Mesaj gönderen sonuncusado »

selamlar...

ben simdi olayımı şu şekilde açıklayayım. kullanıcıya iki ayrı database seçtiriyorum. bunlardan bir tanesinde veriler var digeri ise tamamen boş. İki veritabanıda birbirinin aynısı sadec birissi boş digeri dolu. İşte benim yapmak istedigim şey burada. Dolu olan veritabanından boş olan veritabanına bazı tablolardaki bilgileri atmak istiyorum. Yani bir nevi yedekeme. yokyok bir nevi devir. ama bunu nasıl yyapacağım konusunda hiçbir fikrim yok.
şimdiden yardımlarınnız için teşekkür edderim...
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Selam...

- Basit bir INSERT INTO satırı işini görecektir.. En alta Where ile kriterleri ekleyip Tablo1'in ne kadarını aktarmak istediğini bildirebilirsin. Diğer türlü tümü aktarılır...

Kod: Tümünü seç

  With Query do
  begin
    Active := False;
    SQL.Clear;
    SQL.Add('INSERT INTO Tablo2');
    SQL.Add('     ( Alan1, Alan2, Alan3 )');
    SQL.Add('SELECT Alan1, Alan2, Alan3  ');
    SQL.Add('FROM Tablo1 IN '+QuotedStr( Tablo1DosyaAdi ));
    ExecSQL;
    Free;
  end; // With
- Başarılar...
Resim
Resim ....Resim
oguzozturk74
Kıdemli Üye
Mesajlar: 574
Kayıt: 01 Şub 2004 12:29
Konum: Erdemli - MERSİN

Mesaj gönderen oguzozturk74 »

Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

İki ayrı Database bileşenine ayrı ayrı bağlı iki Table (DataSet) bileşeni ile birinden okunan kayıt diğerine eklenecek;

Kod: Tümünü seç

var
  i: integer;
begin
  TKaynak.First;
  while not TKaynak.Eof do
  begin
    THedef.Append;
    for i := 0 to TKaynak.FieldCount - 1 do
      THedef.Fields[i].Value := TKaynak.Fields[i].Value;
    THedef.Post;
    TKaynak.Next;
  end;
end;
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
sonuncusado
Üye
Mesajlar: 37
Kayıt: 13 May 2005 03:36

Mesaj gönderen sonuncusado »

mrmcop ve rsimsek hocam size tesekkur ederim. ilk yontemle alanları eklemeke epey uzun surecegi icin rsimsek hocamın yontemiyle deneyecegim. saolun
sonuncusado
Üye
Mesajlar: 37
Kayıt: 13 May 2005 03:36

Mesaj gönderen sonuncusado »

ya hocam ben isslemi yaparken sole bi hata ile karsılasıyorum. databaseiniz yinlemeli kayıtlara izin vermiyor diyor. lakin benim database access da ve bu kayıtlar ekleneden once thedefe ben thedefi temizlemek isityorum ama buradada hata veiryor. kullandıgım providerın desteklemedigini soluyor. ne alakaysa. ben kuramadım.
sonuncusado
Üye
Mesajlar: 37
Kayıt: 13 May 2005 03:36

Mesaj gönderen sonuncusado »

yani hedefteki tabloda primary key olan alan varsa yukleme yapamıyorum. bu yuzden hedefteki tabloya eklem yapmadan once icini bosaltmam gerekiyor fakat bunda basarılı olamıyorum...
Cevapla