Ana içeriğe atla

Ms Sql Server Stored Procedure Depolanmış Yordamlar-1

Şuana kadar Sql ifadeleri ile devam eden yazılarıma ek olarak, bu kez SQL Eklentilerinden ve (Create Stored Prosedur)depolanmış yordamlarla çalışmak konusundan biraz bahsedeceğim.

Ms Sql Server Managment Studio Express kullanacağım yazıda Create Procedure - yeni bir depolanmış yordam oluşturup bu yordam ile Sql Server üzerinde Insert işleminin nasıl yapıldığına bakacağız.Devam edelim...


Transact Sql ifadelerinin çoğu bir toplu iş oluşturmak üzere gruplandırılabilir.Toplu iş birlikte çalışmak üzere Sql Server'a gönderilen ifadeler ve eklentiler dizidir denilebilir.Tüm ifade ve eklentiler toplu iş dosyasının büyüklüğü ile sınırlıdırlar.Sql Eklentilerini sayarsak ; CREATE VIEW, CREATE PROCEDURE, CREATE RULE, CREATE TRIGGER türünde ve ilerleyen bloglarda ipuçlarını bulabileceğiniz Sql Eklentileridir.Bu blogta Create Procedure Depolanmış yordam ile ilgili bol resim ve sonuç bilgilerini okuyacaksınız.

Stored Procedure(Depolanmış Yordam) Sql dili ve Sql eklentilerini kullanılarak Transact Sql de yazılan toplu iştir.En önemli kullanım gerekçemiz yazılımımız içinde sürekli tekrarlanan işlerin hem performansını sağlamak hemde tutarlılığını garanti altına almaktır.Stored Procedures(Depolanmış Yordamlar) Sunucu içinde depolanır ve diğer veri nesneleriyle aynı şekilde oluşturulur dolayısla yazılımımıza iş performansı, güvenirlik ve iletişim maliyetini düşürür.

Stored Procedure Nasıl Çalışırlar ?
Stored Procedure Depolanmış Yordam oluşturulduğunda birazdan resimlerinide göreceğiniz parametreleri oluşturulur.Yordam her çağrıldığında ilgili parametreyi alır ve dilersek bir değer döndürebiliriz bu bir mesaj yada tanımlayacağımız bir bilgide olabilir.Stored Procedure Depolanmış Yordamlar sayesinde nesneler veritabanımıza alınmadan önce derlenirler ve yordam sürekli derlenmediğindende perfomans sağlanır.Ms sql server'dan alınması yada verilmesi gereken her veri hacmi bilindiğin gibi bir iletişim maliyeti gerektirmektedir.


Stored Procedure Ne Amaçla Kullanılabilir ?
Yetkilendirme denetlenmesinde
Tablolardaki aktivite denetlenme izinlerinde
Veritabanı ile ilgili tüm uygulamalarda veri tanımlama veya kullanma için gereken ifadelerde

Stored Procedure çalıştıracağım Ms Sql Table

Bir Ms Sql Table için yeni bir Stored Procedur yazmak için oluşturduğum Personals adlı tablom var.Personal Tablom içerisindede yandaki  ad ve tiplere sahip.

Stored Procedure ifademi oluşturmak için Ms Sql Server Managment Studio Express aracında New Query penceresini kullanacağım.

Create Procedure Sql Query 



CREATE PROCEDURE InsertPersonal
InsertPersonal adını taşıyan yordamımın amacı Personals Table içerisine yeni veriler eklemektir.Buna göre kullandığım Personals Table içindeki nesne adları ile veri tiplerini yordamım içinde belirttim ve veriyi hangi koşullarda depolayacağımıda yazdım.

Hazırladığım yordam ifadesini EXECUTE edip çalıştırdığımda alta görebileceğiniz tamamlandı uyarısınıda almış oldum.Şimdi diğer aşamalara bakalım
Tamamlanmış Yordam InsertPersonal
Ms Sql Server içinde hazırlanan yordam yukarıda izlediğiniz yerde çalıştırılmak için hazır.Yordam için belirlediğimiz ifadelere ait parametreler ise bir sonraki resimde...

Sağda izlediğiniz gibi paramatreler Ms Sql Server tarafından yazdığım ifadelere göre otomatik oluşturulmuştur.Buna göre artık yeni ve parametreleri olan bir Stored Procedure sahibim.

Şimdi yapmam gereken ise bu yordamı kendi ismiyle çağırıp içinde belirttiğim koşullarda çalışmasını sağlamak.



Stored Procedure(Depolanmış Yordam) kullanarak Veri ekleme (Insert Into) işlemi  
Ms Sql Server içinde hazırladığım (Stored Procedur) bu yordamla Persanals Table içine yeni bir Personal eklemek için yine Sql Query kullanıyorum fakat bu şart değildir.Bu yordamı farklı yöntemlerde nasıl kullancağımızı ilerleyen yazılarda görebiliriz.

EXECUTE InsertPersonal 'Serkan', 'Senyuz',  '1552', 'IT', 'ssen.mail', '1234', 'Eskişehir'
komutunu çalıştırdığımda aldığım ileti ile verilerim Personals Table içinde depolanmış oldu.

Basit oluşturduğum Stored Procedure içinde kullandığım ifadele sadece veri eklemek için kullanım içindir.Eğer isteseydim Database için ve table için yetiklendirmeleri (okuma/yazma), veritabanı şeması ve gruplandırma ile ilgili spesifik ayarlarıda belirtebilirdim.Depolanmış yordamlarla ilgili daha fazla bilgi bulabileceğiniz blogu takip etmenizi öneririm.

      Sponsorlu Bağlantılar:

Yorumlar

Bu blogdaki popüler yayınlar

Firebird SQL Table oluşturma ve SQL komutları

2 nci  Firebird SQL veritabanı blogunda bu kez mevcut Firebird veritabanına ISQL ile bağlanmayı veritabanı nesnelerini oluşturmayı (create table), Kayıt eklemeyi (ınsert) ve kayıtları izlemeyi (show) ile önemli SQL komutlarını anlatmaya çalışacağım...

Firebird Veritabanı Nedir ? Nasıl Kullanılır

Firebird ücretsiz veritabanı kullanmaya ne dersiniz.Üstelik hiç bir süre ve veri sınırı olmadan kulağa hoş geliyor değilmi.Bu Blogta Borland açık kaynak interbase 6 sürümünden sonra ortaya çıkmış ve gelişimini sürekli sürdürmüş Firebird veritabanına bir göz atıcaz. İnternet üzerinde Firebird ile kaynağa çok sık rastlamazsınız artık bu blogtan Firebird ile ilgili bilgileri takip edebilirsiniz...

Asp.Net Access veritabanina resim ve nesne kaydetmek OLE Nesnesi

Ms Access ile ilgili geçmiş yazılarım arasında biraz vakit geçirmişseniz, Ms Access form uygulamaları yada veritabanı olarak kullanmayı sevdiğimi anlamışsınızdır. Birazdan size anlatmaya çalışacağım konu Ms Access veritabanı olarak kullandığımız bir Asp.Net Web projesinde resimleri ve dosyaları paket halinde veritabanının içine gömmek olacak.Neden bilmiyorum bu konuda Türkçe kaynak yok, merak etmeyin bu yazı size iyi gelecek...