İlkay İlknur

just a developer...

SQL Server 2008'de Stored Procedure'lerin ve T-SQL Komutlarının Debug Edilmesi

Merhaba Arkadaşlar,

Bu yazımda sizlere SQL Server 2008 üzerinde bulunan debugging özelliğinden bahsedeceğim. Debugging özelliği her ne kadar 2008 sürümü ile gelse de şuan çoğu developer bu özelliği kullanmamakta. (En azından benim gördüklerim) Hatta böyle bir özellikten bahsettiğinizde "Hadi canım ordan!" Smile diye tepkilerle bile karşılaşmanız mümkün. Neyse çok uzatmayalım ve SQL Server 2008 üzerinde bulunan bir Stored Procedure nasıl debug edilir kısaca bir göz atalım.

Stored Procedureleri Oluşturalım

İlk olarak debug etmek üzere basit bir stored procedure yazarak örneğimize başlayalım.

CREATE PROCEDURE Test AS BEGIN DECLARE @K AS INT DECLARE @STRING AS NVARCHAR(500) SET @K = 4 SET @STRING ='DEBUGGING'

PRINT (@K*10) PRINT @STRING END GO

Stored Procedure'ün ne iş yaptığı şuan için önemli değil bu yüzde doğrudan Stored Procedure'ü Execute edip oluşturuyoruz.

Peki nasıl Debug Edeceğiz ?

Debugging işlemine geçmeden önce yapmamız gereken oluşturduğumuz SP'yi çağıran T-SQL kodunu yazmak. Bunun için de SQL Server Management Studio'dan yararlanabiliriz.

Query editöre stored procedure çalıştırma scripti oluşturduktan sonra stored procedure'ün çağırıldığı noktaya bir breakpoint koyuyoruz ve kodun çalıştırılması sırasında debuga bu noktadan başlıyoruz. Son olarak ise tıpkı Visual Studio içerisinde de yaptığımız gibi "Debug" butonuna tıklıyoruz. Kod çalıştırıldığı sırada breakpoint konulan noktaya gelince tıpki Visual Studio'da olduğu gibi işleyiş duracaktır. Daha sonra SP'yi çalıştırdığımız noktada F11 tuşuna basarsanız doğrudan SP koduna yönlenirsiniz ve tüm değerleri kontrol edebilirsiniz.   Visual Studio içerisinde debug sırasında lokal değerleri gözlemlediğimiz "Locals" penceresi de yine SQL Server içerisinde bulunmakta. Gördüğünüz gibi artık SQL Server içerisinde yazdığınız sorgularda problemin nerede olduğunu öğrenmek için her yere PRINT ile değerleri yazdırmaya gerek yok. Smile Kodun içerisinden adım adım problemli noktaları tespit edebilir ve gerekli değişiklikleri çok daha hızlı bir şekilde yapabilirsiniz. Not : Debugging özelliği 2008 sürümü ile beraber gelen bir özelliktir ve  daha eski sürümlerde kullanılamaz. Ayrıca örneği karışık olması açısından stored procedure üzerinden yaptık. Ancak normal olarak Query Editöre yazdığınız SQL komutlarını da debug edebilirsiniz. Görüşmek Üzere,


Yorum Gönder


Yorumlar

  • profile

    İsa ŞENGÜN

    • 27
    • 5
    • 2016

    Gerçekten tebrik ederim çok güzel bir paylaşım.

  • profile

    Leyla

    • 3
    • 4
    • 2012

    Faydalı bir paylaşım olmuş,teşekkürler.