Dbase Tablosunu Firebird e Kopyalamak...

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
asymetrics
Üye
Mesajlar: 15
Kayıt: 08 Haz 2005 12:26

Dbase Tablosunu Firebird e Kopyalamak...

Mesaj gönderen asymetrics »

Arkadaşlar S.A

Eski yazılmış bir üye aidat programı var elimde.
fakat veritabanı dbase olduğu için tablolarda arasıra bozulmalar var.
ben bu tabloları yazdığım yeni programda firebird e aktarmak istiyorum.
yani eski dataları kullanmak istiyorum.
fakat dbase tablolarında ki alan sayısı ile benim şu an firebirddeki tablolarımdaki alan sayısı aynı değil.
dbase de ki tablolarda 9 adet alan var , benimkinde 15 alan var.
fakat 9 alan karşılıklı olarak aynı yaptım ne olur ne olmaz diye.
bu tabloyu nasıl firebirde aktarabilirim.
forumda tablo kopyalama vb arattım ama bişey bulamadım.
bu tabloları nasıl kopyalarım, yardımlarınız için teşekkürler.
datapump ile de denedim bu arada fakat bi sonuç alamadım.
ibrahimcoban
Üye
Mesajlar: 163
Kayıt: 11 Eki 2005 10:44
İletişim:

Re: Dbase Tablosunu Firebird e Kopyalamak...

Mesaj gönderen ibrahimcoban »

Aktarım programı yaz. :D
http://ibrahimcoban.com/
Lazarus, Kol-Ce,Delphi ve C#
asymetrics
Üye
Mesajlar: 15
Kayıt: 08 Haz 2005 12:26

Re: Dbase Tablosunu Firebird e Kopyalamak...

Mesaj gönderen asymetrics »

ibrahim çoban arkadaşım :)
süper cevap için sizi kutluyorum.
acaba şöyle mi yazsam
sql sorgusuna

select aktar(dbase tablosu) firebird e
Kullanıcı avatarı
White Rose
Üye
Mesajlar: 726
Kayıt: 06 Tem 2005 09:41
Konum: Güneyden
İletişim:

Re: Dbase Tablosunu Firebird e Kopyalamak...

Mesaj gönderen White Rose »

s.a.
Bde admin programı ile bir alias oluşturun, Defaultdriver ve Langdriver seçeneğinden DBASE'yi seçin ve Path'ine de dbf dosyalarınızın bulunduğu yolu tanımlayın.
DBASE sürücüsünün Langdriver ayarlarını Türkçe (dBASE TRK cp857) yapın.
Sonra delphi tarafında forma bir table nesnesi ekleyerek Database name seçeneğinden oluşturduğunuz Aliası,
Tablename den de istediğiniz dbf dosyasını seçin Table'ye çift tıklayarak alanları ekleyin.
Firebird için de forma database, dataset, transaction ekleyerek ayarlarını yapın.

Bundan sonra bir döngü ile tableden okuttuğunuz kayıtları firebirde dataset alanlarına aktarın.

table1.open;
table1.first;
fbdatabase.connection:=True;
fbdataset.open;
while not table1.eof do begin
fbdataset.append;
fbdatasetALAN1.Text :=Table1ALAN1.Text;
fbdatasetALAN2.Value:=Table1ALAN2.Value;
.............
fbdataset.post;
table1.next;
end;
Transaction1.CommitRetaining;

tüm tableler için bu şekilde döngü yapmalısınız.
Cevapla