Kategoriler


SON YORUMLAR
mehmet uluğ
bu makalemsi makale! şaka olmalı:)
sevda
beğendim
Reyting Amca
Sitenin reytingi düştü. Google.da aratınca arkalarda çıkıyor. Eskiden ilk sırada çıkardı. Site sahibi ateşli yazılar yazmıyor 1-2 yıldır...
Seda
web sitesi, masa üstü uygulamaları, muhasebe, restaurant, otel, barkot sistemleri yazılımı yapılır. adres:s.sedaerden@gmail.com
Hafize
Yazılım ödevleri ve web sitesi yapılır.Bilgi için hafizearduc@hotmail.com
Gamze
C#, C++, ASP.NET-MVC, HTML-CSS, Matlab, Arduino ödevleri yapılır. Bilgi için; gamze.zirh@gmail.com
Eyüp yılmaz
merve seni seviıyorum asl bebeyoö
BEYZADE BOZTEPE
18 Yaşındayım ınstagram=beyzadebztp
Eyüp yılmaz
39 yasındayım coderım hackerıım ıp verın modemınıze vurayım
BEYZADE BOZTEPE
18 Yaşındayım ınstagram=beyzadebztp (çıkın çıkın gelin GIZLARRRRR)
BEYZADE BOZTEPE
EYVALLAH BENDE İYİYİM
BEYZADE BOZTEPE
İYİYİM GEZEGEN SEN NASILSIN
Eyüp yılmmaz
17 yasındayım kız talıplerımı beklıyom ınsatgram= eyup.yılmaz3
BEYZADE BOZTEPE
MERHABA DÜNYA

Bilgisayar Mühendisleri
Here is the website inspired me to use 
it as a guide when I tried to define 
myself as an engineer candidate a few 
years ago. It really helped me to work
 and study feeling in confidence with 
being on the right way. I suggest this 
website to whom it may direct her/his 
to find the right career path. It 
includes many articles varies from 
real life experiences to detailed 
software engineering issues. But the 
most dignified parts for me are the 
articles in general and career titles.
Son okunan makaleler:
SQL Server - SP için önemli ipuçları
SSIS’ in güzellikleri 1
Bilgisayar Mühendisi olacaklara üniversite seçme rehberi?
SSIS’ in güzellikleri 2
Bilgisayar Mühendisi olacaklara üniversite seçme rehberi?
SQL SERVER 2005 'DE FILLFACTOR KAVRAMI
Kurumsal Yazılım Geliştirmede C# ve Java Savaşı, IDE’lerin Önemi
Online Java Dersleri - Java Package - PAKET ERİŞİMLERİ
JSP - MySQL Türkçe Dil Desteği
Online Java Dersleri - JAVA’da PROGRAM DENETİMİ
Online Java Dersleri - Java'da Nesnelerin Başlangıç Durumu ve Temizlik
2016 ekonomik krizi
Kredi Kartı Numarası Doğrulama- Lhun algoritması
Oracle Performanslı Index Kullanımı
Oracle - ROWTYPE kullanarak satır update etme ve kolonlarda DEFAULT anahtar kelimesi
Oracle - Object Pinning nedir?
Programcı Gözüyle iPhone OS ve Android Karşılaştırması
Oracle - Indexler Hakkında detaylı bilgi - 2
Oracle - Kayıtların sayfa sayfa getirilmesi - Oracle paging
Programcı Gözüyle iPhone OS ve Android Karşılaştırması

Bilgisayar Mühendisleri Portalı

SQL Server - SP için önemli ipuçları

1.) "SET NOCOUNT ON" kullanınız.
Sp'ler siz özellikle ayarlamadığınız müddetçe her bir statement'ın kaç satırı etkilediğini geri dönüş değeri olarak döndürür. Eğer bu sayılara ihtiyacınız yoksa(ki çoğu uygulama ihtiyaç duymaz) bunu engellemenin yolu " set nocount on ” direktifinin kullanılmasıdır. Bu client ile server arasındaki birtakım gidip gelmeleri(round-trip), sp içerisindeki birden fazla satırı etkileyen statement ‘ ların sayısına göre engelleyecektir. Yani ne kadar çok birden fazla satırı etkileyen statement varsa  o nispette round-trip sayısı artacaktır. Normalde bu direktifi kullanmak bazen çok büyük bir performans artışı sağlamaz ama büyük uygulamalar için mutlaka performans artışı sağlayacaktır.
create procedure test_MyStoredProc @param1 int
as
set nocount on

2.) sp_ prefix'ini kullanmayınız.
Çünkü bu prefix(önek) sistemin kendi sp lerinin başında bulunur. Database engine her zaman  bu prefix'le başlayan sp'leri ilk master database'inde arar. Database engine önce master database'i tarar. Sonra sp'nin yer aldığı database'i tarar. Eğer sp'lerinize sp_ prefix'ini kullanarak isim vermişseniz. Master database'indeki aramadan dolayı biraz daha zaman alacaktır. Ayrıca eğer sp_ prefix'ini vererek isimlendirme yaptığınız sp'leriniz sistemin kendi sp si ile aynı isimde ise ilk olarak master veritabanında arama yapılacağından sizin sp'ünüz değil de sistemin kendi sp'ü çalıştırılacaktır.

3.) Opsiyonel parametreleri çok gerekiyorsa kullanın.
Opsiyonel parametre kullanırken gerçekten böyle bir şeye ihtiyacınız olup olmadığını tekrar düşünün. Bu şekilde parametre kullanımı performansı azaltır. Eğer sizin için gerçekten böyle olması gerekiyorsa bu şekilde opsiyonel parametre kulllanın. Çünkü her bir parametrenin tüm durumlarını düşünerek kodlama yapcaksınız bu da zaman alıcıdır ve hata olma ihtimalini yükseltecektir.

4.) Mümkün olan yerlerde OUTPUT parametrelerini kullanın.
Output parametrelerini scalar değer döndürme amaçlı olarak kullanırsak az da olsa bir performans artışı sağlarsınız. Eğer uygulamanız sizden tek bir değer geri dönmesini bekliyor ise bu yaklaşımı tercih ediniz. Ayrıca output parametrelerini cursor döndürmek için de kullanabilirsiniz. Ancak şimdilik cursor tabanlı vs. set tabanlı işleme tartışmalarını sonraki makalelere bırakalım.

5.) Geri Dönüş değeri kullanın.
Sp'nin çağrıldığı yere sp'den değer döndürünüz. Bu geri dönüş değerini programınızda değerlendiriniz. Bu hataları daha kolay analiz etmenizi sağlar. Ayrıca kullanıcılara da bilgi veriniz.

6.) İlk önce DDL, sonra DML
SQL Server, bir veri tanımlama statement(DDL)'ından sonra gelen DML statement (DDL içerisindeki objelere referans veren) ı ile karşılaştığında kodu tekrar compile eder. Bu böyle olur çünkü SQL Server DML için bir plan oluşturmak için, DDL  tarafından obje üzerinde meydana gelen değişiklikleri hesaba katmak zorundadır. Eğer tüm DDL'lerinizi sp'nin başında tanımlarsanız sadece bir kez derleme işi yapılır. Eğer DDL ile DML'i karışık şekilde yazarsanız, sp'nin birkaç kez tekrar derlenmesine neden olursunuz. Bu da performansı düşürür.

7.) Her zaman açıklama bilgisi kullanınız.
Her zaman kodunuzu güncellemiyor olabilirsiniz ama yine de diğer insanların sizin kodunuzu anlamasını sağlamak için açıklama bilgileri eklemekten kaçınmayın.
Bu makaleyi beğendin mi? Yorumunu Yaz!







Sizden Gelen Yorumlar:

Yorum Yazın

ayazağa(07.07.2011 17:22:36)
İşe yarar bilgiler verilmiş. Teşekkürler. Belki bunlar ileride bir adım daha ileriye taşınabilir.
%78 %0 %22
Katılıyorum Çekimserim Katılmıyorum



Ahmet ŞAHİN(07.08.2009 12:34:58)
Performans açısında güzel bir makale olmuş.
%33 %17 %50
Katılıyorum Çekimserim Katılmıyorum



turquoise(06.04.2009 12:08:53)
Gerçekten güzel bir yazı. Gözümden kaçan, hiç dikkat etmediğim ayrıntılardı bunlar. Şüphesiz performans en önemli kriterlerin başında geliyor. Teşekkürler makaleniz için.
%57 %14 %29
Katılıyorum Çekimserim Katılmıyorum






Copyright© 2001-2017. Bilgisayar Mühendisleri Portalı | Bütün hakları saklıdır.