Database Versiyon Kontrol

MS SQL Server veritabanı ve SQL komutlarıyla ilgli sorularınızı sorabilirsiniz. Delphi tarafındaki sorularınızı lütfen Programlama forumunda sorunuz.
Cevapla
Kullanıcı avatarı
lazymule
Üye
Mesajlar: 127
Kayıt: 16 Eki 2006 04:03
İletişim:

Database Versiyon Kontrol

Mesaj gönderen lazymule »

Merhabalar

mssqlde bir database'im var müşterim programın biten bölümlerini bir yanda da kullanıyor.
lakin db ye bir geliştirken yeni tablolar ve alanlar ekliyorum belirli aralıklarla exe'yi ve db yi güncelliyorum fakat her seferinde bir de müşterinin makinesinde değişiklik yapmak zor oluyor kullandığınız bir araç varmıdır eski db ile yenisi arasındaki farkları bularak bu eksiklikleri eski db eklyerek güncellemeyi sağlayacak bir araç arıyorum. db deki tüm işlemlerimi "Enterprise Manager" ile yapıyorum. herhangi bir tasarım aracı kullanmıyorum.

veya bu tür sorunla karşılaşan arkadaşlar tecrübelerini yazarlarsa çok sevirim.
Evrende Ulaşılamayacak Tepe Yoktur !!!!
Yeterki İnsan Ulaşmak İstesin !!!!
http://www.maxiteknik.com
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Re: Database Versiyon Kontrol

Mesaj gönderen gkimirti »

Firebird kullandığım sıralar bu tür güncelleme sorunları yaşamıştım, olayı şu şekilde çözüyor idim.
vt üzerinde yaptığım modifikasyonları sırayla sql scriptleri halinde try except bloğu içinde çalıştırıyorum, eğer bir alan silinmiş ise ikinci sefer silinmek istenirse exception blok içinde kalıyor sonraki adımayani bir sonraki script çalıştırılıyor. bu ayrı bir programcık halinde setup işleminde çalıştırışıyor..
Bu şekilde vt güncellemelerini fazla zorlanmadan halletmiştim.
ÜŞENME,ERTELEME,VAZGEÇME
Kullanıcı avatarı
aslangeri
Moderator
Mesajlar: 4322
Kayıt: 26 Ara 2003 04:19
Konum: Ankara
İletişim:

Re: Database Versiyon Kontrol

Mesaj gönderen aslangeri »

s.a.
@mrmarman ın bu konuda bir makalesi vardı. ancak mssql üzerine hazırlamıştı update işlemini
onunda biraz oynama yaparak firebird için hazırlayabilirsiniz.
kolay gelsin.
Duyduğun Şeylerin Söylediklerim Olduğuna Eminim Ama
Anladığın Şeylerin Anlatmak İstediklerim Olduğuna Emin Değilim
akdatilla
Üye
Mesajlar: 292
Kayıt: 02 Nis 2006 06:04
Konum: Antalya

Re: Database Versiyon Kontrol

Mesaj gönderen akdatilla »

Kullandığım verisyon kontrol sistemini makale olarak ekledim:
viewtopic.php?f=19&t=24959
Bir incele istersen. Belki sen de bu yöntemi kullanabilirsin.
Bununla ilgili olarak söyleyebileceğim bir şeyde enterprise managerde tabloda bir değişiklik yaparken eğer
dizaynırı kullanıyorsan, yaptığın değiikliği bir script olarak kaydetmeni sağlayacak bir buton var.
Bu butona tıklayarak ekranda gösterilen sql scriptini güncelleme esnasında kullanabilirsin.

Bunun dışında db qüncelleme işi her programcı için zor bir iştir (bence).
Öyle çocuk oyuncağı gibi kolay bir güncellme yöntemi olduğunu sanmıyorum.
Varsa foruma ekleyin biz de yararlanalım.
Kullanıcı avatarı
lazymule
Üye
Mesajlar: 127
Kayıt: 16 Eki 2006 04:03
İletişim:

Re: Database Versiyon Kontrol

Mesaj gönderen lazymule »

merhabalar yeni bebeğim oldu (umut efe) o sebeple cevaplarınıza yeni bakabildim.

aslında yaptığım eklentiyi sql script ile eski db ye ekliyorum. lakin bu pekde kolay olmuyor dalgınlıkla atladığım kısımlar oluşuyor. tabi sonuç hüsran.
akdatilla haklısın biraz zor oluyor makaleyi inceledim ama pekte kafama yatmadı.
Sybase PowerDesigner veya benzeri editorlerde benzer bir özellik varmı ?

aklıma gelen en akılcı çözüm kendime göre bir araç hazırlamak aşağıda kodu nette bulmuştum sanırım verivizyon idi
mevcut tablolarla kaşılaştırma yaparak bir versiyon dönüştürücü yapmak herhalde en güzeli olacak biraz uğraştırcak. nette hala bakınıyorum.

Kod: Tümünü seç

 
CREATE FUNCTION TABLEFIELDS
(
    @TabloAdi nvarchar(100)
)
RETURNS @Results TABLE (FIELD_NAME nvarchar(255),FIELD_TYPE nvarchar(50),FIELD_LENGTH int)
AS
BEGIN
     INSERT INTO @Results
    (
        FIELD_NAME,
        FIELD_TYPE,
        FIELD_LENGTH
    )
    SELECT c.name AS adi,type_name(c.xusertype) AS tip,c.length AS uzunluk
    FROM   syscolumns c
    LEFT JOIN (sysobjects o
    INNER JOIN syscomments co ON o.id = co.id)
      ON   c.cdefault = o.id LEFT JOIN (sysobjects o2
    INNER JOIN syscomments co2 ON o2.id = co2.id)
      ON   c.domain = o2.id
    WHERE  c.id = OBJECT_ID(@TabloAdi)
    ORDER BY c.colid;        
   return
END


Evrende Ulaşılamayacak Tepe Yoktur !!!!
Yeterki İnsan Ulaşmak İstesin !!!!
http://www.maxiteknik.com
Kullanıcı avatarı
lazymule
Üye
Mesajlar: 127
Kayıt: 16 Eki 2006 04:03
İletişim:

Re: Database Versiyon Kontrol

Mesaj gönderen lazymule »

sanırım aradığımı buldum .

EMS DB Comparer for SQL Server
Evrende Ulaşılamayacak Tepe Yoktur !!!!
Yeterki İnsan Ulaşmak İstesin !!!!
http://www.maxiteknik.com
akdatilla
Üye
Mesajlar: 292
Kayıt: 02 Nis 2006 06:04
Konum: Antalya

Re: Database Versiyon Kontrol

Mesaj gönderen akdatilla »

lazymule yazdı:sanırım aradığımı buldum .

EMS DB Comparer for SQL Server
Yeni bebeğiniz olmuş, Allah analı babalı büyütsün. Hayırlı uzun ömürler versin inşallah.

Bahsettiğin programı incelemedim. Sadece biraz özelliklerine baktım.
Ancak bu programın veritabanında yaptığın değişikliklerin uygulanması konusunda pek faydalı olacağını sanmıyorum.
Bu program kendi bilgisayarında eski ve yeni olmak üzeri 2 db olduğunu düşünürsek eskiden yeniye transfer yapmanı sağlayabilir.
Ancak bunu son kullanıcıya uygulamak hiç de mantıklı gelmedi bana. Bütün program kullanıcılarına bu programımı yükleyeceksin.
Ayrıca hiç de performanslı olmaz.
Kullanıcı avatarı
lazymule
Üye
Mesajlar: 127
Kayıt: 16 Eki 2006 04:03
İletişim:

Re: Database Versiyon Kontrol

Mesaj gönderen lazymule »

teşekkürler cümlemizin evladını allah analı babalı sağlık büyümek nasip etsin 2. benim dedim ilki kadar heycan olmaz demiştim ama ilkin den de fazla heyecanlandık :o işi gücü boşladık

akdatilla haklısın akşam bir umut sarıldım. gene işimi görmedi birazda googlenin azizliğine geliyorum anahtar kelimeler hep faklı yerlere yöneliyor bu gün de bakacam olmazsa "en iyi yol bildiğin yol" olacak.
Evrende Ulaşılamayacak Tepe Yoktur !!!!
Yeterki İnsan Ulaşmak İstesin !!!!
http://www.maxiteknik.com
unalaygun
Üye
Mesajlar: 139
Kayıt: 27 Mar 2004 12:34
Konum: istanbul

Re: Database Versiyon Kontrol

Mesaj gönderen unalaygun »

Biraz önce yazdım
referans olarak burası belki işinize yarar. (Belki fazla oldu yarar.)
İyi çalışmalar.

viewtopic.php?f=27&t=24966
derviş
Kullanıcı avatarı
lazymule
Üye
Mesajlar: 127
Kayıt: 16 Eki 2006 04:03
İletişim:

Re: Database Versiyon Kontrol

Mesaj gönderen lazymule »

unalaygun saol
ama şimdilik caydım o işten
not tutmaya devam. örneğini inceleyeceğim
Cevapla