3 Şubat 2013 Pazar

SQL de Hata Fırlatmak(Raise Error in SQL)

  • Bazı durumlarda SQL serverın hata fırlatmasını beklemeden kendimiz sorgunun hata fırlatıp bitmesini isteriz.
  • Örneğin yazdığımız sp yada trigger hata vermeden bizim kendi kontrollerimiz ile hata fırlatmasını sağlayabiliriz.
  • İstediğimiz durum SQL Hatası olmayıp bizim koyduğumuz kontrol neticesinde bir mantık hatası olabilir.
ÖRNEK:

CREATE PROC sp_ciftsayininkaresi
@sayi INT
AS
BEGIN
IF(@sayi%2!=0)
    BEGIN
    RAISERROR ('Girilen sayı çift sayı değildir.',10,1)
    END
ELSE
    PRINT @sayi*@sayi
END

NOT: Basit bir sp yazıyoruz. İstediğimiz sp ye gelen değerin hep çift sayı olması aksi halde işlem yapmamamız.






SP yi çalıştırdığımız zaman;

EXEC sp_ciftsayininkaresi 3