MSSQL Hata Yönetimi: TRY…CATCH Blokları, ERROR_MESSAGE() ve THROW
MSSQL’de hata yönetimi, veritabanı işlemlerinin güvenilirliğini ve tutarlılığını sağlamak için kritik öneme sahiptir. Bu makalede, TRY…CATCH bloklarının nasıl kullanılacağını, ERROR_MESSAGE() fonksiyonunun ne işe yaradığını ve THROW ifadesinin nasıl kullanılacağını inceleyeceğiz.
TRY…CATCH Blokları
TRY…CATCH blokları, T-SQL kodlarında hata yönetimi için kullanılan temel yapıdır. TRY bloğunda hata çıkabilecek kodlar yerleştirilirken, CATCH bloğunda hata durumunda çalışacak kodlar yerleştirilir.
-- TRY...CATCH Bloğu Kullanımı
BEGIN TRY
-- Hata çıkabilecek kodlar
SELECT 1/0;
END TRY
BEGIN CATCH
-- Hata durumunda çalışacak kodlar
PRINT 'Hata oluştu.';
END CATCH;
Code language: SQL (Structured Query Language) (sql)
Yukarıdaki örnekte, bir bölme işlemi (1/0) hata verir ve CATCH bloğu çalışır.
ERROR_MESSAGE() Fonksiyonu
ERROR_MESSAGE() fonksiyonu, meydana gelen hatanın mesajını döndürür. Bu fonksiyon, hata ayrıntılarını daha iyi anlamak ve kullanıcıya daha açıklayıcı hata mesajları sunmak için kullanışlıdır.
-- ERROR_MESSAGE() Fonksiyonu Kullanımı
BEGIN TRY
-- Hata çıkabilecek kodlar
SELECT 1/0;
END TRY
BEGIN CATCH
-- Hata mesajını yazdır
PRINT ERROR_MESSAGE();
END CATCH;
Code language: SQL (Structured Query Language) (sql)
Yukarıdaki örnekte, ERROR_MESSAGE() fonksiyonu, bölme hatasının mesajını yazdırır.
THROW İfadesi
THROW ifadesi, özel hata mesajları oluşturmak için kullanılır. Bu ifade, hata numarası, hata mesajı ve hata durumunu belirlemek için kullanılabilir.
-- THROW İfadesi Kullanımı
BEGIN TRY
-- Hata çıkabilecek kodlar
SELECT 1/0;
END TRY
BEGIN CATCH
-- Özel hata mesajı oluştur
THROW 50000, 'Özel hata mesajı', 1;
END CATCH;
Code language: SQL (Structured Query Language) (sql)
Yukarıdaki örnekte, THROW ifadesiyle özel bir hata mesajı oluşturulur.
Canlı Ortam Uyarısı
Umarım bu makale, MSSQL’de hata yönetimi konusunda size daha fazla bilgi sağlamıştır. İyi çalışmalar!





