- Katılım
- 3 Şubat 2014
- Mesajlar
- 1,744
- Tepkime puanı
- 0
- Puanları
- 0
Sistemde bir hata oluştuğunda,hata kodu ortam fonksiyonu olan @@ERROR tarafından yakalanır.Ancak şuna dikkat etmek lazım bu değer sürekli değişmektedir.
Çünkü , genelde kodlar derlenirken yukardan aşağıya doğru olur.Bu yüzden bu derleme ve yukardan aşağı ilerleme esnasında başka hatalarda doğabilir.Bu hatalar doğdukca @@ERROR un içerdiği hata kodu da değişecektir.
Bu yüzden @@ERROR ile hata yakalarken genelde,program kodlarında,hata olabilecek yerlerde ilgili hata kodu yakalanarak,hemen o satırda hata ekrana yazdırılır.
örneğin bir procedure yazıyoruz;
Kullanıcılardan ürünler hakkında gelen fikirleri,tblGorus tablosuna ekleyecek bir procedure yazacağız.Ancak yabancı anahtara takılan bir kullanıcı kodu yada ürün kodu gelirse,bu durumu mesajla bildireceğiz.Bu hatayı yakalamak için de tabiki @@ERROR kullanacağız.
procedure'un üst kısmını falan yazdığımızı varsayalım
Kod:
IF @@ERROR<>547 --547,yabancı anahtar doğrulanmadı hata kodu.
PRINT'Yanlış kullancı kodu veya yanlış ürün kodu.'
ELSE IF @@ERROR<>0
PRINT'Bilinmeyen bir hata oluştu'
Çünkü , genelde kodlar derlenirken yukardan aşağıya doğru olur.Bu yüzden bu derleme ve yukardan aşağı ilerleme esnasında başka hatalarda doğabilir.Bu hatalar doğdukca @@ERROR un içerdiği hata kodu da değişecektir.
Bu yüzden @@ERROR ile hata yakalarken genelde,program kodlarında,hata olabilecek yerlerde ilgili hata kodu yakalanarak,hemen o satırda hata ekrana yazdırılır.
örneğin bir procedure yazıyoruz;
Kullanıcılardan ürünler hakkında gelen fikirleri,tblGorus tablosuna ekleyecek bir procedure yazacağız.Ancak yabancı anahtara takılan bir kullanıcı kodu yada ürün kodu gelirse,bu durumu mesajla bildireceğiz.Bu hatayı yakalamak için de tabiki @@ERROR kullanacağız.
procedure'un üst kısmını falan yazdığımızı varsayalım
Kod:
IF @@ERROR<>547 --547,yabancı anahtar doğrulanmadı hata kodu.
PRINT'Yanlış kullancı kodu veya yanlış ürün kodu.'
ELSE IF @@ERROR<>0
PRINT'Bilinmeyen bir hata oluştu'