SSDT makale serimin 5. makalesinde projelerin snapshot’ını nasıl oluşturacağımızı, bu snapshot’lar üzerinden yeni bir proje nasıl oluşturacağımızı ve snapshot’ları kullanarak Schema Compare işlemini nasıl yapabileceğimizi görüyor olacağız.
SSDT’de snapshot kullanımının SQL Server’da bulunan snapshot ile aynı mantıkta olduğunu söyleyebiliriz. Belli bir zamanda Schema’sal olarak proje veritabanının salt okunur halini kaydetme ihtiyacımız olabilir. Bunu snapshot ile yapabiliriz.
Örneğin development ortamı olarak kullandığımız projede birden fazla blok geliştirme yaparken her geliştirmeden sonra snapshot oluştururak geliştirme sonrası salt okunur bir kopya elde edebiliriz. Bu şekilde versiyonlama kontrolü yaparak geliştirme adımlarının her birinin bitiminde schema olarak elimizde nasıl bir veritabanın olduğunu saklayabiliriz.
Bugünkü makalemde SSDT üzerinden snapshot oluşturmayı, oluşturduğumuz bu snapshot’ları birbirleriyle ya da proje ile nasıl karşılaştırabileceğimizi ve son olarakta snapshot üzerinden yeni bir projeyi nasıl import edebileceğimizi görüyor olacağız.
Snapshot Oluşturmak
Yeni bir snapshot oluşturmak için projeye sağ tıklayıp gelen ekrandan Snapshot Project yazısını seçiyoruz.

Snapshot Project yazısına tıklandıktan sonra proje build olacak ve eğer projede herhangi bir hata yok ise snapshot oluşturulacaktır.
Eğer daha önce bir snapshot oluşturulmadıysa bu işlem sonucunda proje altında snapshot adında yeni bir klasör oluşacak ve bu klasörün altında da “<Project Name>_YYYYMMDD_HH-MM-SS.dacpac” formatında yeni bir snapshot dosyası oluşacaktır.

Bu ekrandan snapshot dosyasını silebilir ya da ismini değiştirebiliriz.

Snapshot’ı Import Etmek
Snapshot’ı projeye import ederek snapshot üzerinden yeni bir proje veritabanı oluşturabiliriz.
Bunun için ilk olarak DBProject2 adında yeni bir proje oluşturuyoruz ve bu projeye sağ tıklayarak gelen ekrandan Import bölümünün altından Data-tier Application (*.dacpac) yazısını seçiyoruz.

Gelen ekranda Data-tier yani snapshot dosya seçimini Browse butonunu kullanarak yapıyoruz.

Diğer ayarlamaları yaptıktan sonra start butonuna basıyoruz ve snapshot dosyası üzerinden import işlemine başlıyoruz.

İşlem tamamlandığında snapshot içerisinde bulunan objelerin (Table_1 vs.) DBProject2’ye import edildiğini görüyoruz.

Snapshot’ları Schema Compare Yapmak
Değişik zamanlarda almış olduğumuz snapshot’ları Schema Compare özelliği ile karşılaştırarak schema değişikliklerini kontrol edebiliriz. Aynı zamanda bir snapshot’ı proje ile ya da SQL Server üzerinde tanımlı bir veritabanı ile de karşılaştırabiliriz.
Bunun için snapshot üzerinde sağ tık yapıp gelen ekranda Schema Compare yazısını seçiyoruz.

Gelen ekranda seçtiğimiz snapshot’ı diğer snapshot’lar, projeler ya da SQL Server veritabanları ile karşılaştırabiliriz.

Schema Compare işlemi ile ilgili detaylara şu makalemden bakabilirsiniz.
Bugünkü SSDT makalemiz bu şekilde. Makale serimin bir sonraki makalesinde görüşmek üzere.
c8da6249-6762-475c-a679-71760cf9238c|0|.0