Konuyu görüntüle
IUCODERS FORUM > Programlama > Veritabanları > Stored Procedure Kullanımının Gerekçeleri
Yazar
dotnetonur


avatar
Dersaadet
Kayıt: 21.11.2007
03.02.2008-13:31 #36928
Stored Procedure; bir tabloya bağlı olmaksızın veritabanı içinde tanımlanan belirli bir işi yapmaya yönelik kodlardır. Başka bir değişle "Derlenmiş sql cümlecikleridir".

Bunlar birer veritabanı nesnesi oldukları için, doğrudan veritabanı yöneticisi olan programda (örneğin Sql Server) yer alırlar. Veritabanınızı nereye taşırsanız, stored procedurler de orda yer alırlar.

Stored Procedure kullanımının gerekçelerinden en önemlisi encapsulation`dur.

Encapsulation; bilgisayar programcılığı jargonunda bilgi saklama anlamına gelir. Teknik olarak bir modülün yaptığı işlemlerin bir kısmını, bu işlemleri nasıl gerçekleştirdiği bilgisini dışarıdan bilinçli olarak saklamaktır. Encapsulation'ın asıl amacı içeriği saklamak değil kontrolsüz ve gereksiz erişimi engellemek, dış öğeleri, içeriğe standart, önceden tanımlı ara yüzler aracılığıyla ulaşıma zorlamaktır. Sistemleri oluşturan modüllerin birbirine olan bağımlılığını azaltmak üzere kullanılan en önemli yöntemdir. Günümüz nesneye yönelik programlama dilleri encapsulation için gerekli erişim kontrolü mekanizmaları içerir.

Stored Procedure kullanmanın diğer gerekçeleri ve faydalarını da maddeler halinde şöyle özetleyebiliriz;

- En önemli avantajı derlenmiş şekilde saklandığından dolayı daha hızlı çalışabilmeleridir.
- Sunucu üzerinde çalıştıkları için istemci makinelerde iş yükünü azaltır ve performansı artırır.
- Stored Procedure`ler, SQL sorgularından daha hızlı şekilde çalışır ve değer döndürürler.
- Dağıtık uygulamalardaki network trafiğinin azaltılmasına olumlu yönde katkıda bulunurlar.
- Yazılan bir stored procedure`ün, tekrar tekrar yazılmaksızın kod içerisinden çağırabilmesi, modüler programlama yapabilmeyi sağlar.
- Stored Procedure`ler üzerinde işlem yapmak ya da değer döndürmek üzere parametrik yapıda tasarlanabilirler.
- Ve son olarak; daha güvenli bir yapı sunarlar.

http://www.asepedatnet.com/makale_goster.aspx?Id=70





Ortam sanal olsa da, islenen suc gercektir...

Yazar
neurorebel


avatar

Kayıt: 15.08.2007
03.02.2008-21:43 #36978
Yani söylemeden geçemeyeceğim... Gerçekten zayıf bir makale... Makalenin büyük bir kısmını (7-8 satır..) kapsayan "Encapsulation" konseptiyle ilgili paragrafın konuyla hiçbir alakası yok. Şu MVP furyası sağolsun ortalık gereksiz, geçersiz ve saçma makalelerle doldu zaten... Kimse emekten falan dem vurmasın. Bu tarz kalitesiz yazılar yeni başlayanların kafasında çok yanlış fikirler oluşmasına sebep oluyor.

Buyrun bunu okuyun:

http://www.digg.com/programming/Don_t_Write_Tutorials





Do weird and difficult things.

Yazar
tarikkranda


avatar

Kayıt: 07.01.2006
03.02.2008-23:08 #36991
Stored Procedurelerin execution planlari onceden hazirlanmis ve depolanmistir diyemeyiz. Dolayisiyla onceden derlenmis bir yapi soz konusu degildir. Bunu duzeltmek gerekiyor, bircok kisi bunu yanlis biliyor.

http://weblogs.asp.net/fbouma/archive/2003/11/18/38178.aspx





Yazar
dotnetonur


avatar
Dersaadet
Kayıt: 21.11.2007
04.02.2008-00:10 #37008
Eğer ortada hatalı bir bilgi varsa ve onu düzeltmek amacıyla yazılan mesajın üslubu da baştan sona ofsayt ise, ortada bir sorun var demektir. Bu nedenle daha bu foruma yazmayacağım. Bu sorundan dolayı yazmayan birçok kişinin olduğuna da eminim.

Kolay gelsin..





Ortam sanal olsa da, islenen suc gercektir...

Yazar
neurorebel


avatar

Kayıt: 15.08.2007
04.02.2008-00:19 #37010
fazla birşey kaybetmeyeceğimizi düşünüyoruz....





Do weird and difficult things.

Yazar
orhan


avatar
istanbul
admin
Kayıt: 17.11.2005
04.02.2008-09:09 #37035
sp içindeki sql sorguları derlenmiştir. bu ufakta olsa bir hız artışı sağlayabilir. Ama günümüz veritabanları sql sorgularını önbelleğe (cache) alabildikleri için bu da o kadar önemlimidir bilemem. diğrer bi yandan doğrudan veritabanı motoru üzerinde çalışırlar ki bu aynı ağda birden fazla veritabanın var ise ağ trafiğine olumlu yansıyabilir. (makinaların çevirmeli ağ(dialup) ile birbirine bağlandığını düşünüyoruz :) )
sp'lerin en önemli faydası bir bakıma veri katmanı ile kod arasında köprü olmalarıdır. İş modelini sp'ler üzerine taşıyıp uygulamanı veritabanından (tablo mantığından) ayırabilirsin.





N/A
Yazar
xyron


avatar

Kayıt: 08.07.2007
04.02.2008-09:51 #37040
Ben çoook eski mezunum 10 yıldır veri tabanı uzmanıyım ve foruma arada bir giriyorum. Arkadaşımız gayet sade güzel bilgiler vermiş ama aramızda guru olanlar var ki bilgilerin basitliğine katlanamamış heralde. Mühendislikte okuyup bunları bilmeyen bir sürü arkadaş var ben okulda öğrenememiştim bunları bırakın egonuzu tatmin etmeyi. Bu nasıl bir ukalalık nasıl bir egodur anlayaadım. Hata varsa bile düzeltirken insan üsluba dikkat eder aman ukalalık yapmayım diye. Dışarıdan böle gözüküyor bilin istedim. Saygılar.

neurorebel yazdi
 
fazla birşey kaybetmeyeceğimizi düşünüyoruz....






Yazar
neurorebel


avatar

Kayıt: 15.08.2007
04.02.2008-11:52 #37047
Söylediklerimin sonuna kadar arkasındayım... 10 yıllık "veritabanı uzmanı" olmanızda beni pek ilgilendirmiyor...





Do weird and difficult things.

Yazar
blindalley


avatar
balikesir
banlandı
Kayıt: 01.12.2006
04.02.2008-19:14 #37108
neurorebel yazdi
 
Söylediklerimin sonuna kadar arkasındayım... 10 yıllık "veritabanı uzmanı" olmanızda beni pek ilgilendirmiyor...
Seninde artiz olman beni gıcık etti nolcak şimdi..insanların yaptıklarına saygı duy biraz ve bundan sonra uslubuna dikkat et...bu forumda yazmaması gereken bu başlığı açan deil senin gibilerdir...





Yazar
tarikkranda


avatar

Kayıt: 07.01.2006
04.02.2008-21:33 #37125
dotnetonur yazdi
 
Eğer ortada hatalı bir bilgi varsa ve onu düzeltmek amacıyla yazılan mesajın üslubu da baştan sona ofsayt ise, ortada bir sorun var demektir. Bu nedenle daha bu foruma yazmayacağım. Bu sorundan dolayı yazmayan birçok kişinin olduğuna da eminim.

Kolay gelsin..


Merhaba Onur Bey,
Yazdıgım cevap ile ilgili düşünceleriniz beni şaşırttı dersem yeridir sanırım. Kendi yazdığım cevapta sizin sçylediklerinizin tamamiyle yanlış, benim dediklerim doğrudur tarzı bana hiç yakışmayacak ukalaca bir yaklaşım asla sergilemedim, sergilememde. Bu konuda içiniz rahat olur. Foruma geldiğiniz gün de size yazdıklarınızdan ve paylaşımcılığınızdan ötürü teşekkür edip, hoşgeldiniz diyen gene bendim. Forum ortaminda bir cümleyi yazarken mimik ve jestleriniz olmadığı için yazılan cümlenin art niyetle yazıldığını düşünmüş olabiliceğinize inaniyorum. Tüm bunları katmakla beraber, yazdığım cevapta ciddi anlamda rahatsız edici, zedeleyici bir uslup göremiyorum. Ama beni yanlış anladıysanız sizden özür dilerim. Sadece SP ler ile ilgili olarak pre compiled olması işleminin günümüzde Inline SQL ile farkinin kalmadigini bunun da Sql Server 7.0 sürümünden bugune kadar aynı şekilde devam ettigini, birçok kişinin de bunu yanlış bildigini belirtmek istedim. Çünkü SP ler ile ilgili olarak ilk söylenen bilgiler bunlar olmakla beraber, bu hatali bilgi bu şekilde varolmaya devam etmektedir.

Iyi calismalar.





Yazar
tarikkranda


avatar

Kayıt: 07.01.2006
04.02.2008-21:38 #37126
neurorebel yazdi
 
fazla birşey kaybetmeyeceğimizi düşünüyoruz....


Onur Bey bu forumda bilgi paylaşmaya çaba gösteren, bizim aldığımız eğitimin dışından bir egitim alıp, bu meslege gönül vermiş birisi. Bu yönüyle benim verdiğim cevaba istinaden bir yanlis anlasilma olmus olabilir. Onun benden kaynaklanan bu yaklasimina ben cevap vermeden sizin bu sekilde kestirip atar tarzinizi tasvip etmedigimi bilmenizi isterim. Duzeltilecek ya da duzelmeyecek bir odurum varsa sakin olup olayi taraflarina birakmanin daha akilci bir yol oldugunu dusunuyorum.

Saygilarimla.





Yazar
tarikkranda


avatar

Kayıt: 07.01.2006
04.02.2008-21:44 #37127
xyron yazdi
 
Ben çoook eski mezunum 10 yıldır veri tabanı uzmanıyım ve foruma arada bir giriyorum. Arkadaşımız gayet sade güzel bilgiler vermiş ama aramızda guru olanlar var ki bilgilerin basitliğine katlanamamış heralde. Mühendislikte okuyup bunları bilmeyen bir sürü arkadaş var ben okulda öğrenememiştim bunları bırakın egonuzu tatmin etmeyi. Bu nasıl bir ukalalık nasıl bir egodur anlayaadım. Hata varsa bile düzeltirken insan üsluba dikkat eder aman ukalalık yapmayım diye. Dışarıdan böle gözüküyor bilin istedim. Saygılar.

neurorebel yazdi
 
fazla birşey kaybetmeyeceğimizi düşünüyoruz....


Oncelikle, 10 yıllık bir mezunun bu foruma katilim gostermesi gercekten sevindirici bir olay. Kendi adima konusmam gerekirse, onceki iki postumda da belirttigim uzere yazilan cvapta ne bir guru olma iddiasi ne de farkli art niyet tasiyan bir yaklasim soz konusudur. Ben nedensel olarak Books Online icinden alinti yapacak sekilde, nedenleri ile beraber verilen bilgilerin icerisinden bir tanesinin cogu insan tarafindan yanlis bilinen bir kavram oldugunu aciklamak istedim. Elestiri yamak veya forum kurallarina uyacak sekilde (burasi bir forum oldugu icin) bununn soyle olmasi gerekiyor nedeni de burda soyle yaziyor diyebilmek ile ego tatmini arasinda cok buyuk cizgiler oldugunu hatirlatmak isterim ve yinelemek istiyorum ki yazdigim mesajin agir bir yani oldugunu goremedim.

Saygilarimla.





Yazar
dotnetonur


avatar
Dersaadet
Kayıt: 21.11.2007
04.02.2008-21:48 #37129
Hocam yazdığım mesajın sizin ile hiç alakası yok, sizi ima ederek yazmadım, hakkınızı helal edin. Uzuuuun bir süre çok elzem durumlar olmadığı müddetçe sadece okuyucu olacağım. Kolay gelsin...

tarikkranda yazdi
 
dotnetonur yazdi
 
Eğer ortada hatalı bir bilgi varsa ve onu düzeltmek amacıyla yazılan mesajın üslubu da baştan sona ofsayt ise, ortada bir sorun var demektir. Bu nedenle daha bu foruma yazmayacağım. Bu sorundan dolayı yazmayan birçok kişinin olduğuna da eminim.

Kolay gelsin..


Merhaba Onur Bey,
Yazdıgım cevap ile ilgili düşünceleriniz beni şaşırttı dersem yeridir sanırım. Kendi yazdığım cevapta sizin sçylediklerinizin tamamiyle yanlış, benim dediklerim doğrudur tarzı bana hiç yakışmayacak ukalaca bir yaklaşım asla sergilemedim, sergilememde. Bu konuda içiniz rahat olur. Foruma geldiğiniz gün de size yazdıklarınızdan ve paylaşımcılığınızdan ötürü teşekkür edip, hoşgeldiniz diyen gene bendim. Forum ortaminda bir cümleyi yazarken mimik ve jestleriniz olmadığı için yazılan cümlenin art niyetle yazıldığını düşünmüş olabiliceğinize inaniyorum. Tüm bunları katmakla beraber, yazdığım cevapta ciddi anlamda rahatsız edici, zedeleyici bir uslup göremiyorum. Ama beni yanlış anladıysanız sizden özür dilerim. Sadece SP ler ile ilgili olarak pre compiled olması işleminin günümüzde Inline SQL ile farkinin kalmadigini bunun da Sql Server 7.0 sürümünden bugune kadar aynı şekilde devam ettigini, birçok kişinin de bunu yanlış bildigini belirtmek istedim. Çünkü SP ler ile ilgili olarak ilk söylenen bilgiler bunlar olmakla beraber, bu hatali bilgi bu şekilde varolmaya devam etmektedir.

Iyi calismalar.






Ortam sanal olsa da, islenen suc gercektir...

Yazar
orhan


avatar
istanbul
admin
Kayıt: 17.11.2005
04.02.2008-21:53 #37131
Merhaba Onur,
yukarıdaki yazı iyi niyetle yazılmış olsa da gerçekten insanları yanlış yönlendiren bir yazı. Arkadaşın uslubu sert fakat içeriği doğru. Boyle bir yazıyı yayınlamamalısın yada burada paylaşılan bilgi ile yeniden yazmalısın.





N/A
Yazar
dotnetonur


avatar
Dersaadet
Kayıt: 21.11.2007
04.02.2008-22:08 #37133
Merhaba,

Öncelikle ben Bilgisayar üzerine hiçbir eğitim almadım. Üniversite eğitimimi de İşletme alanında yapmaktayım.

1996 dan beri internet kullanmakta, 2004`ten beri de aktif olarak hack-security alanında çalışma yapmaktayım. Bu bağlamda CW`de yöneticilik, Cyber-Security de editörlük ve Olympos`ta da yazarlık yapmaktayım. ASP.NET ile yeni yeni ilgilenmekteyim. Bu yüzden .NET konusundan teorik bilgim fazla değil, buna rağmen kendi çapımda birşeyler yapmaya çalışmaktayım.

Makalede ki bilgiler yanlış olabilir ama makaleyi yazarken faydalandığım kaynaklar .NET ile ilgilenen çoğu kişinin bildiği ya da duyduğu kişilerin kitapları veya makaleleri; Sefer Algan, Yunus Emre Alpözen, Yaşar Gözüdeli.

Zaten makaleye tepki verenlere, makaledeki bilgiler kesinlikle doğru gibi bir tavır takınmadım ama tepki veren bir arkadaş daha önce de farklı bir konuda benzeri birşey yazmıştı. Ortada bir yanlış varsa önce el ile, sonra dil ile hiç olmazsa kalb ile düzeltin diye bir söz vardır. Benim şikayetçi olduğum konu üslub ki zaten forumda genel olarak böyle bir sıkıntı oluyor belirli konularda.

Rahatsızlık verdiğim için özür dilerim..

orhan yazdi
 
Merhaba Onur,
yukarıdaki yazı iyi niyetle yazılmış olsa da gerçekten insanları yanlış yönlendiren bir yazı. Arkadaşın uslubu sert fakat içeriği doğru. Boyle bir yazıyı yayınlamamalısın yada burada paylaşılan bilgi ile yeniden yazmalısın.






Ortam sanal olsa da, islenen suc gercektir...

1 2
Del.icio.us
Digg
Facebook
Furl
Google
Blink
Simpy
Spurl
Y! MyWeb