veritabanı karşılaştırma hakkında

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
burakb44
Üye
Mesajlar: 131
Kayıt: 11 Mar 2005 03:13

veritabanı karşılaştırma hakkında

Mesaj gönderen burakb44 »

öncelikle bütün arkadaşlara selamlar,

arkadaşlar firebird 2.0 veritabını üzerine stok,cari,çek,senet v.s. modülleri olan bi yazılım geliştirdik buraya kadar sorun yok, sorunumuz şu geçen yıl kullanımına başlanan programın veritabanında 45-50 table, 15-20 stored procedure, 35-40 triger, bir o kadar da generator var

yazılımın son halindeki veritabanında ise 80 table, 40 stored procedure, 60 trigger, 35 generator mevcut

benim yapmak istediğim eski veritabınındaki bilgileri yeni veritabanına otomotik yaptırmak.

bunu yaparken eski veritabanında char olan bi field yeni veritabanında integer olabilir veya tam terside olabilir yani eski veritabanındaki fieldlerin data tipleri de değişmiş olabilir.

sorun kısaca bu şekilde
sizlerin değerli fikirlerine ihtiyacım var
yardımcı olursanız sevinirim

Herkese iyi çalışmalar

Burak Bitikçi
Malatya
poshet303
Üye
Mesajlar: 235
Kayıt: 26 Eki 2005 01:15

Mesaj gönderen poshet303 »

Firebird de Char alanlar sayısal alanlara sayısallarda char a dönüştürülebiliyor.
Ama Tarihi sayıya sayıyı tarihe gibi dönüşümleri elle yapmanız lazım. (Firebird kısmında daha yeni konuşuldu)

DataPump ile bazı denemeler yapın derim doğru ayarlarla gayet iş görür bir program.
Bir püf noktası; eğer foreignkey leriniz varsa önce referans gösterdiğiniz tabloları (yani master tabloları) aktarın. Sonra slave tabloları aktarın. Aksi halde slave tablolardaki bilgileri aktaramayabilirsiniz.
benim yapmak istediğim eski veritabınındaki bilgileri yeni veritabanına otomotik yaptırmak.
Bilgileri otomatik yaptırmak ne anlama geliyor orasını pek anlayamadım :)

Kolay gelsin
Kullanıcı avatarı
burakb44
Üye
Mesajlar: 131
Kayıt: 11 Mar 2005 03:13

Mesaj gönderen burakb44 »

merhabalar,

bilgileri otomotik aktarmaktan kasıt şu;
eski veritabanındaki bilgileri okuyacak, daha sonra yeni veritabanına ekleyecek bunu yaparken tablo isimlerini veritabanından alacak, field data tiplerini okuyacak eski veritabanına göre farklı olanları program kendi içinde dönüştürecek (bu dönüşüm sadece char-integer alanlar üzerinde olabilir) yani tablo isimlerine göre tek tek kod yazarak aktarma yapmak yerine toplu aktarma yapacak.

inşallah anlatabilmişimdir.
iyi çalışmalar
shadowmann
Üye
Mesajlar: 508
Kayıt: 30 Oca 2004 10:49

Mesaj gönderen shadowmann »

Hocam önce listboxa tablo adlarını al. Sonra her tablodaki alanları diğer listboxa al. Ve en başta hedef dbde aynı adla table oluştur. Sonra field tipine bak eski vtdeki field tip ve uzantısına göre yeni vt de alanı ve boyutunu oluştur. ) Alanları oluşturma işini müteakip de içeriklerini aktar. Forumda daha önce geçmişti buna benzer bir konu. Senin yapman gereken ilk sırada alanları oluşturmak.
Kullanıcı avatarı
burakb44
Üye
Mesajlar: 131
Kayıt: 11 Mar 2005 03:13

Mesaj gönderen burakb44 »

Fikriniz için teşekkür ederim tam olarak yapmak istediğim olayı yazmışsınız.

Bu aşamada sizlerin değerli katkılarını bekliyorum önce tablo isimlerini alma, daha sonra seçilen tabloya ait fieldlerin isimleri ve data tiplarini nasıl alabilirim bu lstelerialdıktan sonra veri tabanını oluşturacağım.

yardımlarınız için teşekkürler.
ikut

merhaba

Mesaj gönderen ikut »

burakb44 yazdı:Fikriniz için teşekkür ederim tam olarak yapmak istediğim olayı yazmışsınız.

Bu aşamada sizlerin değerli katkılarını bekliyorum önce tablo isimlerini alma, daha sonra seçilen tabloya ait fieldlerin isimleri ve data tiplarini nasıl alabilirim bu lstelerialdıktan sonra veri tabanını oluşturacağım.

yardımlarınız için teşekkürler.
Hocam interbase in kitapları var. Arkadaş zaten konu 2 gün önce konuşuldu diyor. Önce biraz araştıralım yani... Zaten goodleda bunu yazsan gettablenames diye basbas bagiriyor:)

Saygılar
Cevapla