SQL – Stored Pocedure kullanımı

SQL – Stored Pocedure kullanımı

SQL Stored Procedure , türkçesi ile saklı yordamlar veritabanı projelerini vazgeçilmez objelerinden biridir. Basit bir şekilde size parametreli, parametresiz nasıl prosedür yapabiliriz onu göstereceğim. Başlangıç düzeyinde örnekler veriyorum. Daha da karmaşık prosedürler yazabilirsiniz.
Özelilikle C# ve ASP.NET tabanlı projelerimizde veritabanı işlemleri yaparken en çok kullandığımız yönetemlerden biridir.Saklı yordamlar , SQL deyimlerinden oluşur ve parametre alabilir, parametreler geriye değer döndürürler.
Bir Stored Procedure parametre alması gerekiyor diye de bir şart yoktur. Hemen kısa bir örnek vereyim; Projenizde bir alan var ve buraya veritabanınızın birkaç tablosundan gelecek bilgiler ile doldurmak istiyorsunuz.Bunu yaparken ya projeninizin için

SELECT …….. INNER JOIN ……

sorgusunu eklerseniz ki bu bir yazılımcı için uzun ve yazılımı yoracak, sistemi yavaşlatacak aynı zamanda kod fazlalığına yol açacaktır. Ancak yine aynı sorguyu bir prosedürün içine koyarsak ve yazılımı kodlağımız editorden sadece bu prosedürü çağırarsanız daha çok faydalı olacaktır.
Şu şekilde parametresiz bir prosedüre oluşturabilirsiniz.

CREATE PROCEDURE ProsedürAdi
AS
BEGIN
Select – Delete – Update – Insert sorgularınız (SELECT …….. INNER JOIN ……)
END

Bir diğer durumumuzda Prosedürü parametreli kullanmak. Örnekle anlatacağım ;
Personel takip programı(masa üstü) yada web uygulaması geliştiriyorsunuz. Burada personeller için ayrı,
departmanlar için ayrı bir tablo tutarsınız değilmi. Bir personeli de hangi birimde çalıştığını göstermek
için veritabanında bu tabloları ilişkilendirirsiniz. Siz yeni bir personel aldınız ve bunu ekleyeceksiniz.
Personel tablomuzun alanları; ID(Primary Key) , PersonelAdi, Soyadi,BolumID olsun.
Bölüm tablomuzda da ; BolumID(Primary Key) ve BolumAdi olsun.

Prosedürümüzde parametre kullanacağız, kişi eklerken dışardan almamız gerekenler.
Personel Adı, Soyadı ve Bölüm Adı

CREATE PROCEDURE PersonelEKle

@PersonelAdi NVARCHAR(50),
@Soyadi NVARCHAR(50),
@BolumAdi NVARCHAR(50)

AS

BEGIN

INSERT INTO Personel (PersonelAdi,Soyadi,BolumAdi)
values (@PersonelAdi,@Soyadi,@BolumAdi)

END

Çalıştırmak için ise

exec PersonelEkle ‘Ali’,’Veli’,’Yazılım’

Evet bir anlatımın daha sonuna geldim. Belki çok açıklayıcı olmamış olabilir, zaman ayırıp okuyan herkese hakkını helal etsin diyorum. Kısacası bir yazılım projesinde ne kadar az kod , o kadar çok iş için veritabanının özelliklerinden faydalanmak gerekir. İyi çalışmalar.





VN:F [1.9.22_1171]
Rating: 5.0/5 (3 votes cast)
VN:F [1.9.22_1171]
Rating: +2 (from 2 votes)
SQL - Stored Pocedure kullanımı, 5.0 out of 5 based on 3 ratings

178 Görüntülenme

 

Cevapla

E-posta adresiniz yayınlanmayacak. Required fields are marked *

*

Şu HTML etiketlerini ve özelliklerini kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

More in Genel, MSSQL, PROGRAMLAMA (10 of 61 articles)