Stored Procedure Kullanımı
-
Asp.net ile yazacağım bir proje için hazırlık yapıyorum ve veritabanı seçimi konusunda biraz dolarşırken okuduklarımdan sonra aklımda bir soru oluştu. Büyük veri barındıran tablolar (ortalama 300bin satır) var diyelim, bu tablolarda sorgu yaparken stored procedure yazıp procedure çağırmak ile programda sorguyu yazıp kullanmak performans farkı yaratırmı?
-
daha çok sorgu çagırma hızında etki olur
şöyle düşün user-application-db bunların her biri bir katman
kullanıcı application'a bir istek yolluyor ve application bu istegi bir query olarak db'ye yollayıp db'nin cevabını bekliyor
Eger sen kocaman bir SQL querysi yollarsan ve bunu aynı anda yüzlerce kez tekrarlarsan performans kaybı yaşarsın
SP kullanarak bu aradaki transferi hızlandırabiliyorsun.Tabloda performans yakalamak için daha çok view kullanman lzım
-
hem sp kullanırsan, sql-injection danda yırtmış olursun :)
not: sql için 300 k büyük bi veri değil aslında
-
hem projeyi derleyip nete attıktan sonra sadece sql satırı değiştirmen gereken düzeltmelerde işi sql'den çözebiliyorsun. Tekrardan projeyi açıp derleyip ftp'ye atmana gerenk yok. Sp iyidir, güzeldir..
-
Sp ve wiev konusunu güzelce anlatabilecek var mı?
-
ontedi bunu yazdı:
-----------------------------Sp ve wiev konusunu güzelce anlatabilecek var mı?
-----------------------------
Örnek vererek anlatayım; create view ToplamVW AS Select (s1 + s2)as Toplam from Tablo Kullanım: Select * From ToplamVW //Var olan tablondan yeni bir sanal tablo gibi bişey yaratır. Sana s1 ile s2 alanın toplanmış haldeki sutunu verir sürekli. SP'lerde ise fonksyon mantığı vardır. Sorguyu yanlızca bir kere yazarsın sonra her yerde onu kullanırsın. create proc dbo.HaberGetir AS Select top 10 * From Haber order by HaberID Desc Kullanımı: HaberGetir // Son eklenmiş 10 haberi getirir.
Toplam Hit: 1253 Toplam Mesaj: 6
