SQL Server’da Stored Prosedürlerde Output Kullanımı

Herkese merhaba,

Bu yazıda sizlere SQL Server’da Stored Prosedürlerde Output kullanımından bahsedeceğim.

SQL Server’da stored prosedürler saklı yordamlardır. Output kullanılan prosedürler geriye değer döndüren prosedürlerdir. Geriye dönen değeri başka sorgularda ya da prosedürlerde kullanabiliriz.

İlk yazan birisi için yazım ve kullanımı biraz karışık gelebilir. Bu konuda sizlere vereceğim naçizane tavsiye en az 10 farklı örnek düşünerek yazmanız. Bu örnekleri Northwind veritabanı ya da AdventureWorks veritabanını kullanarak yapabilirsiniz. Örnek kullanımını Northwind veritabanını kullanarak inceleyelim.

--Outputlu prosedürün oluşturulması işlemi
CREATE PROC KategoriAdiniGetir @id INT , @kategoriadi NVARCHAR(100) OUTPUT
AS
BEGIN

SELECT @kategoriadi=CategoryName FROM dbo.Categories WHERE CategoryID=@id

END

--Kullanılması

--Output'u kullanacak değişkeni tanımlıyoruz.
DECLARE @kategoriadinigetir NVARCHAR(100)
--Prosedürü çalıştırıyoruz ve output olan değere tanımladığımız değişkeni atıyoruz.
EXEC KategoriAdiniGetir @id=1, @kategoriadi=@kategoriadinigetir OUTPUT
--Tanımladığımız değeri select ile çekiyoruz.
SELECT @kategoriadinigetir

Görüldüğü üzere değişken tanımlarken fazladan Output kelimesini değişken sonuna ekliyoruz. Bu dışarı çıkacak değerdir.  Select kısmında ise bu değişkene ilgili alanı atıyoruz. Prosedür oluşturma işleminde yapılan ekstra bir işlem yok.

Çalıştırırken ise ilk olarak Output değerini kullanacak değişkeni tanımlayıp bu değişkeni prosedürün içinde kullanıyoruz. Sonrasında ise tanımladığımız değeri select ile çekiyoruz.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

778 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!