Visual Studio 2010 ile beraber veritabanı üzerinde bazı işlemleri Visual Stuio 2010 IDE’si üzerinden yapabilecek fırsatı buluyoruz. Bunlardan en güzeli iki farklı veritabanını bir biri ile kıyaslama… Geliştirme sürecindeki veritabanı değişikliklerini, “production” ortamına yansıtmak, sürekli güncellenebilecek uygulamalar geliştirenler için oldukça sıkıntılı bir süreç olabiliyor. Veritabanındaki güncellemelerin SQL “script”lerini düzgün bir şekilde hazırlamak, sorunsuz bir şekilde bir çok kere çalışabilecek olduğundan emin olmak zaman zaman zorlayıcı ve can sıkıcı oluyor. Özellikle sürüm kontrolünün düzgün yapılamadığı ortamlarda, bu daha da zorlaşıyor. Visual Studio 2010 ile bu sorunların üstesinden gelmemiz daha kolaylaşıyor. İki farklı veritabanının hem yapısal bütünlüğünü, hem de veri bütünlüğünü karşılaştırmalı olarak yapabiliyoruz. Önceleri başka programlar ile yapabildiğimiz bu karşılaştırmaları Visual Studio 2010 ile yapabiliyor olmak, geliştirme sürecini oldukça hızlandırıyor.
Basit bir örnek ile neler yapabiliyoruz kısaca ve basitçe bakalım. Bu örnekte kendi yarattığım “DatabaseCompare” veritabanı üzerinden gidiyor olacağım. Hızlı olmasına adına “Person” diye tek bir tablosu var. Bu bizim geliştirme sürecimizde kullandığımız veritabanımız. Aynı şekilde “DatabaseCompare_Prod” şeklinde bir veritabanımız daha olsun. Geliştirme sürecindeki veritabanımızın tıpa tıp aynısı ve “production” ortamında kullanıldığını farzedelim.
Yeni bir talepten dolayı bu veritabanında bir değişiklik ya da yenilik yapmamız gerekiyor. Geliştirme ortamımızdaki veritabanında ilgili değişiklikleri yapalım…Mesala “Person” tablosuna yeni bir kolon, veritabanına da “Address” diye bir tablo ekleyelim.
Bu değişiklikleri Visual Studio 2010 IDE’si ile takip etmek için, Visual Studio 2010’da menüden “Data” altından “Schema Compare” alt menüsünden “New Schema Comparision…” diyoruz.
Çıkan ekrandan veritabanlarına bağlantı için gerekli ayarları yapıp, “Source” ve “Target” şeklinde veritabanlarımızı seçiyoruz. “Source” diye tanımladığımız veritabanı, geliştirme ortamında güncellenen veritabanı, “Target” diye tanımladığımız veritabanı da, “production” ortamında kullanılmakta olan veritabanı.Ayrıca bu ekranda “Schema Compare Settings” ile veritabanı karşılaştırmaları ile ilgili ayarları görebilir, istersek de değiştirebiliriz.
Bu ekrana “Ok” dedikten sonra, seçmiş olduğumuz bu iki veritabanının karşılaştırılması yapılır ve aşağıdaki gibi bir ekran görüntüsü karşımıza geliyor olacaktır. Bu ekran görüntüsünde, iki veritabanı arasındaki tüm yapısal fark ortaya çıkmış olacaktır. Sol taraftaki ağaç yapısındaki özellikler veritabanlarının özelliklerinin hiyerarşik bir yapıda görüntülenmesini sağlar. “New” altında veritabanındaki yeni değişiklikleri görebilirsiniz. “Different definition” altında da iki veritabanı arasındaki farkı görebilirsiniz. Değişen tablolar, eklenen kolonları ve daha bir çok değişikliği bu ekran üzerinden görmek, yönetmek mümkün. Bu değişiklikleri “production” ortamına aktarmak için menüdeki seçenekleri kullanabiliyoruz.
Yukarıdaki resimde; 1 numaralı seçenek ile bu değişiklikleri hemen “production” ortamına uygulamak mümkün. İstersek 2 numaralı seçenek ile bu değişiklikleri *.sql dosyasına kaydedip, daha sonra başka bir “setup” programı aracılığıyla “production” ortamına uygulamak mümkün ya da 3 numaralı seçenek ile anında değişikliklerin SQL script’ini görmek mümkün. Benzer bir çalışmayı veritabanlarınında ki verileri kıyaslamak için de yapabiliyoruz. Kişisel olarak Visual Studio 2010’da beğendiğim en iyi yeni özelliklerden bir kaçı diyebilirim. Ancak bu özelliğin Visual Studi0 2010 Ultimate ve Premium versiyonlarınıda olduğunu belirtmek isterim.Neyse şimdilik bu kadar…