Recent comments

None


İçerik Ara











Yasal Uyarı
Bu sitede sunulan tüm bilgi ve dökümanlar Turgay Sahtiyan tarafından yazılmaktadır. Yazıların kaynak göstermek şartıyla kullanılması serbesttir.

© Copyright 2009-2013
Takvim
<<  Aralık 2017  >>
PaSaÇaPeCuCuPa
27282930123
45678910
11121314151617
18192021222324
25262728293031
1234567
Keywords

SSDT makale serimin 10. makalesine geldik. Bu makalede Refactor özellikleri ile objelerin isim ve schema gibi bilgilerinin hızlı bir şekilde nasıl değiştirilebileceğine bakıyor olacağız.

[more]

Refactor menüsü ile aşağıdaki işlemleri yapabiliriz.

1

  • Rename : Obje adını ve refere edildiği yerlerin tamamını değiştirmek için kullanılır.
  • Move to Schema : Objenin schema’sını değiştirmek için kullanılır.
  • Expand Wildcards : select sorgularındaki “*” kısmını kolon adlarına dönüştürmek için kullanılır.
  • Fully-qualify Names : select sorgusundaki kolon adlarını full qualified hale dönüştürmek için kullanılır.

Rename

Objenin adını refere edildiği yerler de dahil olmak üzere değiştirmek için kullanılır.

AdventureWorks projesi altındaki uspGetManagerEmployees SP’sini açalım ve Person.Contact yazısı üzerindeyken sağ tuş menüsünden Refactor >> Rename butonunu tıklayalım.

2

Gelen ekranda Contact tablosu için yeni bir isim belirleyelim. Örneğin ContactNew yapalım.

3

Preview Changes yazısı tıklı ise değişiklik yapılması gereken bütün refere edilen objelerin listesi bir sonraki ekranda karşımıza çıkacaktır. Bu ekrandaki objeler bir önceki makalemde anlattığım Find All References bilgisi ile aynı olacaktır.

4

Değiştirilecek bütün yerlerin ön izlemesine yaptıktan sonra Apply butonuna basarak değişikliklerin yapılmasını sağlayabiliriz.

İşlemler tamamlandığında Person.Contact tablosunun geçtiği her yer Person.ContactNew olarak değişecektir.

5

Move to Schema

Yukarıdaki örnekte anlattığım gibi objenin schema’sını hızlı bir şekilde refere edildiği tüm yerler ile beraber değiştirmeye yarar.

Expand Wildcards

Bu özellik ile “select *” sorgusunu “select kolonadlari” şekline dönüştürebiliriz.

Örneğin şu şekilde bir SP’miz olduğunu düşünelim.

6

Mouse “yıldız (*)” ‘ın üzerinde iken sağ tık menüsünden Refactor >> Expand Wildcards butonunu tıklarsak “*” kolon adlarına dönüşecektir.

7

Fully-qualify Names

Bir önceki örnekteki kolon adlarını full qualified names yani alias’lar kolon adlarının önünde olacak şekilde değiştirmeye yarar.

Person.Contact tablosu üzerinde iken sağ tık menüsünden Refactor >> Fully-qualify Names butonunu tıklarsak;

8

Bütün kolon adlarının önüne alias konularak full qualified hale dönüştürülecektir.

9

Refactor menüsü ile kod değişiklikleri yapmak oldukça kolay bir hale getirilmiş durumda. Bu özelliğe en kısa zamanda alışmanızı tavsiye ederim.

Bir sonraki SSDT makalemde görüşmek üzere.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


SSDT makale serimin 9. makalesinde development yaparken işleri kolaylaştıran 2 kod navigasyon yardımcısından, Go To Definition ve Find All References özelliklerinden bahsedeceğim.

[more]

Bu özelliklerin ikisine de Visual Studio kullanan kişilerin aşina olduklarını düşünüyorum. Go To Definition ile objenin tanımlandığı kod bloğuna, Find All References ile ise objenin refere edildiği yerlerin bilgisine erişebiliriz.

Go To Definition

AdventureWorks projemiz içindeki uspGetManagerEmployees SP’sini çift tıklayarak açalım ve mouse Person.Contact tablosu üzerinde iken mouse’un sağ tuş menüsünden Go To Definition butonuna basarak bu tablonun create script’ine erişebiliriz.

1

Find All References

Aynı tablonun yani Person.Contact tablosunun tüm refere edildiği yani kullanıldığı yerleri bulmak için sağ tuş menüsünden Find All References butonunu tıklıyalım.

2

Referans listesi alt tarafta Find Symbol Results penceresinde görüntülenecektir. Bu listedeki istediğimiz bir satıra tıklayarak referansın yapıldığı script bloğuna erişebiliriz.

3

Bir sonraki SSDT makalemde görüşmek üzere.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


Daha önce SQL Server 2012 Management Studio aracında code snippet kullanımını şu makalemde incelemiştik. Bugün ise SSDT aracında Code Snippets kullanımına bakıyor olacağız.

[more]

Code Snippets’ın ana amacı daha hızlı kod geliştirmektedir. Tablo, SP, View oluşturmak gibi SQL Server üzerinde yapılabilecek her script işleminin örnek kodunu barındıran Code Snippets, intellisence özelliği ile beraber kod geliştirmeye oldukça hız kazandırmaktadır.

Script ekranında Code Snippets’a sağ tık menüsünden ya da CTRL+K,CTRL+X tuş kombinasyonu ile ulaşabiliriz.

0

Örneğin Table bölümünden Create Table ile ilk kod parçacığımızı ekleyelim.

1

Eklediğimiz kod bloğunda tabii ki bazı değişiklikler yapmamız gerekmekte. Değiştirilmesi gereken yerler sarı ile işaretli olan yerlerdir. İlgili yere mouse’u getirdiğimizde bir bilgi ekranı görüntülenir.

2

Ayrıca tab butonu ile sarı bölümlerin yani değişiklik yapılması gereken bölümlerin üzerinde hızlıca gezinebiliriz.

Yazımın başında söylediğim gibi Code Snippets’ın amacı kod geliştirme sürecini kısaltmaktır. Bu yüzden bu yeni özelliğe en kısa sürede alışmanızı tavsiye ederim.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


SSDT makale serime bir süre ara vermiştim. Bugün anlatacağım SSDT’de bir tablo içindeki veriler üzerinden Insert Script’i oluşturma özelliği ile makale serime devam ediyorum.

[more]

SQL Server 2012 daha doğrusu SSDT’den önce bu işi SSMS üzerinden Generate Scripts özelliği ile yapabiliyorduk. Hatta bu konu üzerine şu makaleyi kaleme almıştım.

SQL Server 2008 de Bir Table daki Verilerden Insert Script i Oluşturma

SQL Server 2012 ile beraber artık bu ihtiyacımızı SSDT ile yapabiliriz. Çünkü SSDT makale serimin ilk makalesinde dediğim gibi artık developerlar bütün işlemlerini SSDT üzerinden yapacak ve başka bir tool’a ihtiyaç duymayacaklar.

Şimdi adım adım bir tablo üzerinden nasıl insert script’i oluşturabileceğimize bakalım.

SQL Server Object Explorer’dan insert script’i oluşturmak istediğimiz tabloyu bulup sağ tıklayarak view data butonuna basalım. Ben bu örneğim için AdventureWorks DB’sinde bulunan Person.Address tablosunu kullanacağım.

1

Gelen ekranda ilk olarak yapmamız gereken “1000” olarak seçili Max Rows kısmını değiştirmek. Eğer tüm veriler için insert script’i oluşturacak isek bu kısmı All olarak değiştirmeliyiz.

2

Max Rows seçimini yaptıktan sonra artık insert script’i oluşturabiliriz. Bunun için Max Rows kısmının sağında bulunan script butonunu tıklıyoruz.

3

Script butonuna bastığımızda ilgili kayıtlar için insert script’leri yeni bir Query ekranında açılacaktır.

4

Eğer insert script’lerinin yeni bir Query ekranında değil de direk dosya olarak kaydedilmesini istiyorsak bunun için Script to File butonunu kullanabiliriz.

5

Son olarak şu eklemeyi de yapıp bu makaleyi noktalayalım. View Data ekranında kayıtlar üzerinde değişiklik yapılabilir ya da yeni kayıt girilebilir veya silinebilir. Bu işlemler için de SSDT’yi kullanabiliriz.

Bir sonraki SSDT makalesinde görüşmek üzere.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


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.

[more]

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.

1

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.

2

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

3

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.

4

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

5

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

6

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

7

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.

8

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

9

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.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


SQL Server 2012’nin çıkmasına sayılı gün kala Microsoft tarafından SQL Server’ın 1989 yılından beri aldığı yol ile alakalı güzel bir video hazırlanmış.

[more]

İlgili video’yu aşağıda bulabilirsiniz.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


SSDT makale serimin 4. makalesinde veritabanı projesini SQL Server’da tanımlı bir veritabanı ile nasıl karşılaştırıp schema farklılıklarını bulabileceğimizi görüyor olacağız.

[more]

Bir önceki makalemde projede yaptığımız değişiklikleri nasıl publish edebileceğimizi görmüştük. Bu makalede ise publish’den önce veritabanları arasındaki farklılıkları nasıl karşılaştıracağımıza bakacağız.

Projeyi development ortamı, publish ettiğimiz yeri ise production ortamı olarak adlandırmıştık. Bu durumda developer’lar projede schema değişikliği yaparken aynı zamanda production ortamında da DBA’ler schema değişikliği yapmış olabilirler.

En nihayetinde publish esnasında 2 veritabanı arasında schema olarak farklılık oluşur. Dolayısıyla publish’ten önce bu değişikliklerin kontrol edilmesi ve conflict var ise çözümlenmesi gerekir.

SQL Server 2012’den önce schema compare işlemleri için Redgate, Idera gibi 3rd party tool’lar kullanılmaktaydı. Artık schema compare işlemini SQL Server 2012 ile ücretsiz olarak yapabiliriz.

Lafı fazla uzatmadan karşılaştırmayı nasıl yaptığımıza bakalım. Bunun için her 2 ortamda yani hem projede hem de SQL Server’da tanımlı veritabanında değişiklikler yapacağım ve daha sonra Schema Compare ile bu değişiklikleri nasıl bulacağımıza bakacağız.

İlk olarak bir önceki makalemde oluşturduğum tbl_SSDTSample isimli tabloma FaxNo isimli yeni bir kolon ekliyorum.

1

Daha sonra projemde bir değişiklik daha yapmak adına tbl_SSDTMPerson isimli yeni bir tablo oluşturuyorum. Yeni bir tablonun nasıl oluşturulacağını şu makalemden bakabilirsiniz.

2

Şimdi de production tarafı olarak varsaydığımız SQL Server’da tanımlı AdvenTureWorks veritabanında bulunan tbl_SSDTSample isimli tablodan NewTelephone isimli kolonu siliyorum.

3

Değişiklik ve eklemelerim tamam. Şimdi 2 veritabanı için Schema Compare yapacağım.

Bunun için projeye sağ tıklayıp Schema Compare yazısını tıklıyorum.

4

Gelen ekranda kaynak olarak projedeki veritabanını hedef olarakta SQL Server’da bulunan veritabanını seçiyorum ve Compare butonuna basıyorum.

5

Compare işlemi tamamlandığında karşıma 2 bölümden oluşan bir sonuç listesi çıkıyor.

6

Üst bölümde 2 veritabanı arasındaki farklı olan objeler listelenirken, alt bölümde seçili olan farklılığın detayı gözüküyor.

Örneğin ilk değişikliğe baktığımızda 2 veritabanında da tbl_SSDTSample isimli tablonun olduğunu ama bu 2 tablo arasında farklılık olduğunu görüyoruz. Farklılığın detayına 2. bölümde baktığımızda; FaxNo (projeye yeni eklediğimiz kolon) ve NewTelephone (SQL Server’daki AdventureWorks’ten sildiğimiz kolon) kolonlarının hedef veritabanında olmadığını görüyoruz.

7

Aynı şekilde değişikliğe sahip 2. objeye yani tbl_SSDTSample isimli objeye baktığımızda bu objenin kaynak veritabanında olduğunu ama hedef veritabanında olmadığını görüyoruz. Zaten Action kısmındaki “Add” ifadesi de bunu işaret eder durumda.

8

Üst tarafta bulunan butonlar sayesinde Schema Compare işleminin özelliklerini, gruplamasını, filtrelemesini yapabiliriz. Bunların çok detayına girmeyeceğim. Belki ilerde bu özelliklerin bazıları için ayrı bir makale yazarım.

Farklılıkları inceledikten sonra direk bu ekrandan farklılıkları eşitleyebiliriz. Bunun için üst tarafta bulunan Generate Script butonunu kullanarak değişikliklerin script’lerini oluşturabileceğimiz gibi Update butonunu kullanarak değişikliklerin direk eşitlenmesini sağlayabiliriz.

9

Update işleminden sonra 2 veritabanın birbirine eşitlendiğini tekrar Schema Compare yaparak kontrol edebiliriz.

Schema Compare özelliği SQL Server 2012’e ile bundle olarak gelen bir özellik. Daha önceki sürümlerde 3rd Party Tool’lar kullanarak yaptığımız schema karşılaştırma işlemini artık SQL Server 2012 ile beraber ücretsiz yapabiliriz.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


SSDT makale serimin 3. makalesinde veritabanı projesinde yaptığımız değişiklikleri nasıl publish edebileceğimizi görüyor olacağız.

[more]

Kafanızda daha rahat canlanması açısından veritabanı projesini development ortamı, publish edeceğimiz yeri de production ortamı olarak düşünebiliriz. Bu makalede development ortamında yaptığımız veritabanı değişikliklerini production ortamına nasıl publish/deploy edebileceğimizi göreceğiz.

Örneklere geçmeden önce şu bilgiyi vermek istiyorum. SSDT ile publish işlemi SQL Server 2005 ve üzeri versiyonlara ve ayrıca SQL Azure’a yapılabilir. Hedef sunucunun versiyonunu projenin özellikleri sayfasından belirleyebiliriz.

0

Şimdi örneklere geçelim.

Yeni Tablo Eklemek

İlk olarak projede tbl_SSDTSample adında yeni bir tablo create ediyoruz.

1

Şimdi bu oluşturduğumuz tabloyu production’a publish edelim. Bunun için projeye sağ tıklayıp açılan ekrandan publish yazısını tıklıyoruz.

2

Gelen publish ekranını detaylı inceleyelim.

3

(1) Publish’i hangi instance’a ve veritabanına yapacağımızı edit butonu vasıtasıyla belirliyoruz.

(2) Advanced butonu vasıtasıyla detaylı publish seçeneklerini belirliyoruz.

4

(3) Ekranda yaptığımız değişiklikleri template olarak saklayabiliyoruz. Bu şekilde sürekli aynı sunucuya yaptığımız publish işlemlerinde tekrar tekrar aynı seçenekleri seçmektense daha önce kaydettiğimiz bir profile’ı seçerek işlemleri hızlandırabiliriz.

(4) Profile’ın projeye eklenip eklenmeyeceğini seçebiliriz.

(5) Generate Script butonu ile publish script’ini oluşturabiliriz.

5

(6) Ya da Publish butonu ile direk hedef sunucu üzerinde ilgili script’i çalıştırabiliriz.

İşlem tamamlandığında hedef sunucuda yeni oluşturduğumuz tablonun(tbl_SSDTSample) oluştuğunu görüyoruz.

6

Tabloya Kolon Eklemek

Şimdi tbl_SSDTSample tablosuna yeni bir kolon ekleyelim.

7

Normalde kolon eklemelerinde alter script’leri yazmamız gerekli. Oysa SSDT’de değişikliği yukarıda gördüğünüz gibi tablo üzerinde yapmamız yeterli. Create ya da alter komutu yapılacağını SSDT kendisi ayarlamakta.

Yukarıdaki değişikliği görmek için tekrar publish yaptığımızda alter script’inin oluşturulduğunu görüyoruz.

8

Kolonun Adını Değiştirmek

Az önce eklediğimiz Phone isimli kolonun adını Telephone yapalım.

9

Bu işlemi yani bir kolonun adını değiştirdiğimiz anda projenin altında refactorlog uzantılı bir dosya oluşmakta.

10

Bu dosya yapılan kolon değişikliklerinin detaylarını tutmakta ve SSDT bu dosya vasıtasıyla kolon adı değişikliklerini kontrol altına almakta.

11

Aynı kolonun adını bir daha değiştirirsek refactorlog uzantılı XML dosyasında yeni bir kayıt seti daha oluşacaktır.

12

Son olarak yaptığımız bu kolon değişikliklerini publish ettiğimizde hedef tabloda kolonun en son halini aldığını görüyoruz.

13

Bu makalemizde publish işleminin detaylarını gördük. Bir sonraki makalede Schema Compare özelliğini inceliyor olacağız.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


SSDT makale serimin 2.makalesinde hali hazırda kullanmakta olduğumuz bir veritabanını SSDT’ye proje olarak nasıl ekleyebileceğimizi görüyor olacağız.

[more]

İşlemi 2 farklı yerden yapabiliriz. Bunlardan ilki SQL Server Object Explorer.İkincisi ise Solution Explorer.

Ben bu makalemde SQL Server Object Explorer’ı kullanarak olan bir veritabanından yeni bir projenin nasıl oluşturulacağını göstereceğim.

SSDT’ye yeni bir proje olarak eklemek istediğimiz veritabanını sağ tıklayıp Create New Project yazısına tıklıyoruz.

1

Bu ekranda gördüğünüz TURGAY-PC\SS2012 benim makinamda kurulu olan bir SQL Server 2012 instance’ı.

Gelen ekranda Import seçeneklerini belirliyoruz.

2

Bazı önemli import seçeneklerine bakacak olursak;

(1) Proje’ye bir isim ve lokasyon belirliyoruz.

(2) Proje’yi olan bir solution’a proje olarak ekleyebilir ya da yeni bir solution create edebiliriz. Ben yeni bir solution create etmeyip projeyi bir önceki makalemde oluşturduğum solution’ın içine create ediyorum.

(3) Oluşturulacak olan objelerin ne şekilde klasörlere ayrılmasını istediğimizi belirliyoruz.

(4) Her bir klasörde bulunacak maksimum obje adedini belirliyoruz.

Import seçeneklerini belirledikten sonra Start butonuna basarak import işlemini başlatıyoruz.

3

Import işlemi tamamlandığında Finish’e basıyoruz.

4

Import işlemi bittiğinde Solution Explorer’a yeni bir proje açılmış olacaktır.

5

İstediğimiz bir objenin içeriğine Solution Explorer’dan bulup bakabiliriz.

6

Bu makalemizde hali hazırda kullanmakta olduğumuz bir veritabanını SSDT’ye proje olarak nasıl eklendiğini inceledik. Bir sonraki SSDT makalemde bu veritabanı üzerinde yaptığımız değişiklikleri nasıl publish edeceğimize bakıyor olacağız.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


Bugün sizlerle yeni bir makale serisine başlayacağız. Bu makale serisinde SQL Server 2012 ile gelen yeni bir tool olan SQL Server Data Tools (SSDT) üzerine konuşuyor olacağız.

[more]

SSDT’nin ne olduğuna daha önce şu makalemde değinmiştim. Değinmiştim diyorum çünkü CTP1 zamanında yazdığım bu makaleden sonra baya bir değişiklik oldu.

Bu değişikliklerin tamamını ve SSDT’nin bize neler sunduğunu bu makale serisinde detaylı olarak inceleyeceğiz.

Serinin bugünkü makalesinde SSDT’ye giriş yapıp genel bir bakış atacağız.

SSDT Local DB İmkanı Sunar

SSDT ile gelen özelliklerden bahsedeğim ilki Local DB özelliği. Yani siz makinanızda SQL Server kurulumu yapmasanız dahi SSDT’nin Local DB özelliği sayesinde sanki makinada SQL Server servisleri kuruluymuş gibi veritabanı oluşturabilir ve yönetebilirsiniz. Bu sayede developer’lar makinalarına SQL Server kurmak zorunda kalmazlar.

Şimdi hem Local DB özelliğini görmek hem de SSDT’ye ilk adımı atmak için yeni bir veritabanı projesi başlatarak işlemlerimize başlayalım.

New Project ekranından SQL Server Template’leri altında bulunan SQL Server Database Project’i seçiyoruz ve projemize bir isim(örneğin DBProject1) verdikten sonra OK’e basarak projeyi create ediyoruz.

1

Projeyi oluşturduktan sonra sol tarafta bulunan SQL Server Object Explorer listesinde SQL Server bağlantılarımızı görüyoruz.

Bu listede bulunan localdb öğesini incelediğimizde bu öğe sanki bir SQL Server Instance’ı gibi gözüküyor. Ama daha öncede bahettiğim gibi bu gerçekte bir SQL Server servisi değil SSDT ile beraber gelen local DB özelliği.

localdb’nin altındaki objeleri genişlettiğimizde normal bir SQL Server Instance’ında olan her şeyin localdb’de de olduğunu görüyoruz.

2

Örneğin yeni bir tablo ya da yeni bir SP’yi bu ekrandan ekleyebilir ya da daha önce oluşturulmuş objeleri görüntüleyebiliriz.

3

4

SSDT Üzerinden Tablo Oluşturma Ya da Değiştirme

Bir önceki başlıkta gördüğümüz gibi obje ekleme işlemini SQL Server Object Explorer üzerinden yapabiliriz. Ya da bu işlemler için Solution Explorer ekranında bulunan Project’e sağ tıklayarak ta yapabiliriz.

5

Yeni bir tablo eklemek için Add menüsünden Table’ı seçelim.

6

Gelen ekrandan Table’ı seçip Add’e basıyoruz.

7

Gelen ekranda hem kod ile hem de design ekranını kullanarak tablo oluşturma işlemini yapabiliriz.

8

SSDT ile gelen bu ekranın en güzel özelliklerinden biri code ekranında yaptığımız bir değişikliğin aynı anda design ekranına yansıması. Aynı şekilde design ekranında yapılan değişikliğin de aynı anda code ekranına yansımasıdır.

Tanımlamaları yapıp tabloyu kaydediyoruz.

9

Kayıt işleminden sonra localDB’ye de bu tablonun açılması için Debug(F5) butonuna basıyoruz.

10

SQL Server Object Explorer’dan LocalDB’yi kontrol ettiğimizde tables kısmında dbo.Table1’i tablosunu görüyoruz.

11

Tabloya Address varchar(100) şeklinde yeni bir kolon tanımlayıp tekrar Debug yaparsak ilgili değişikliğin localDB’ye de yansıdığını görüyoruz.

12

13

SSDT’ye giriş makalemizin sonuna geldik. Bir sonraki makalede hali hazırda kullanmakta olduğumuz bir veritabanını SSDT’ye nasıl import edip çalışacağımızı göreceğiz.

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan


Bugün size SQL Server 2011 Denali ile beraber gelecek olan yeni bir tool’dan bahsetmek istiyorum. Juneau kod adıyla anılan bu tool’un açık adı SQL Server Developer Tool (SSDT). Bu yeni tool vasıtasıyla, developer’lar, SSMS (SQL Server Management Studio) kullanma ihtiyacı duymadan bütün işlemlerini bu yeni tool ile karşılayabilecektir.

[more]

Microsoft, developer arkadaşlara gerçekten oldukça fazla önem vermekte. DBA olarak bu önemi kıskanmamak mümkün değil :) Bizde bu yeni tool’lar istiyoruz. :)

Konumuza dönecek olursak, Juneau (cuno olarak okunuyor), developer’lara hem Visual Studio’nun özelliklerini sunmakta hem de SSMS üzerinden yapılabilecek işlemleri kapsamakta.

Juneau’nun kapsamı için aşağıdaki resme bakabiliriz.

image

Juneau’nun gözüme çarpan bir diğer özelliği ise DB’ler arasında schema karşılaştırması yapılabilmesi. Bildiğiniz gibi şu anda bu işlemi 3rd Party Tool’lar ile yapmaktayız. (Apex,Redgate vs.). Bu özellik sayesinde live DB’yi proje DB’si ile karşılaştırıp eksik olan değişiklikleri otomatik eşleyebilirsiniz.

Sözü fazla uzatmadan Teched 2010’da yapılan bir sunuma link vermek istiyorum. Bu sunumda yapılan demolar oldukça açıklayıcı bir şekilde Juneau’yu anlatmış.

http://www.msteched.com/2010/Europe/DAT314

İyi Çalışmalar

Turgay Sahtiyan

Not : Blog haricinde, faydali gördügüm yazilari ve linkleri twitter adresimden paylasiyorum. Beni twitter'da takip etmek için : twitter.com/turgaysahtiyan