- Katılım
- 1 Şubat 2007
- Mesajlar
- 93,001
- Reaksiyon puanı
- 49,676
- Puanı
- 1,060
- Konum
- İstanbul
- Web Sitesi
- izleryazar.com
MSSQL kullanırken bir stored procedure veya fonksiyon ile bir veya daha fazla tablodan sayısal değer döndürmek istiyorsunuz fakat tabloda değer olmadığı zaman 0 yerine null sonucu döndüğü için kullanılan programlama diline bağlı olarak çeşitli hatalara yol açabiliyor. Bu sorunun çözümü ise son derece basit. MSSQL içinde tanımlı olan ISNULL fonksiyonu ile bu sorundan kolayca kurtulabilirsiniz.
İki parametre alan fonksiyonun ilk parametresi null olup olmadığı kontrol edilecek değişkeni alırken ikincisi de 0 değerini alacak. İsterseniz bu 0 değerini farklı bir sayıyla da değiştirebilirsiniz elbette.
Örnek bir stored procedure kodu üzerinde gösterimi:
Örnek kod üzerinde de görüldüğü gibi eğer fonksiyon veya prosedürün döndüreceği değer bir değişkene atanmamışsa yukarıdaki @variable gibi bir değişkene atanıp o şekilde isnull kontrolünün yapılması gerekiyor...
İki parametre alan fonksiyonun ilk parametresi null olup olmadığı kontrol edilecek değişkeni alırken ikincisi de 0 değerini alacak. İsterseniz bu 0 değerini farklı bir sayıyla da değiştirebilirsiniz elbette.
Örnek bir stored procedure kodu üzerinde gösterimi:
Kod:
DECLARE @variable INT
SELECT @variable=MAX(not) FROM notlar
ISNULL(@variable,0)
Örnek kod üzerinde de görüldüğü gibi eğer fonksiyon veya prosedürün döndüreceği değer bir değişkene atanmamışsa yukarıdaki @variable gibi bir değişkene atanıp o şekilde isnull kontrolünün yapılması gerekiyor...
OzaN | FF | FavoriForumum.NET Anasayfa