Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistem Platform Analitik (PDW)
Titik akhir analitik SQL di Microsoft Fabric
Gudang di Microsoft Fabric
Database SQL di Microsoft Fabric
Fungsi ini mengembalikan nilai tingkat keparahan kesalahan tempat kesalahan terjadi, jika kesalahan tersebut CATCH menyebabkan blok TRY...CATCH konstruksi dijalankan.
Sintaks
ERROR_SEVERITY ( )
Tipe pengembalian
Int
Mengembalikan nilai
Ketika dipanggil dalam CATCH blok tempat kesalahan terjadi, ERROR_SEVERITY mengembalikan nilai tingkat keparahan kesalahan yang menyebabkan CATCH blok berjalan.
ERROR_SEVERITY
NULL mengembalikan jika dipanggil di luar cakupan CATCH blok.
Keterangan
ERROR_SEVERITY mendukung panggilan di mana saja dalam cakupan CATCH blok.
ERROR_SEVERITY mengembalikan nilai tingkat keparahan kesalahan dari kesalahan, terlepas dari berapa kali kesalahan berjalan atau di mana ia berjalan dalam cakupan CATCH blok. Ini berbeda dengan fungsi seperti @@ERROR, yang hanya mengembalikan nomor kesalahan dalam pernyataan segera setelah yang menyebabkan kesalahan.
ERROR_SEVERITY biasanya beroperasi di blok berlapis CATCH .
ERROR_SEVERITY mengembalikan nilai tingkat keparahan kesalahan khusus untuk cakupan blok yang mereferensikan blok tersebut CATCHCATCH . Misalnya, CATCH blok konstruksi luar TRY...CATCH dapat memiliki konstruksi dalam TRY...CATCH . Di dalam blok dalam CATCH itu, ERROR_SEVERITY mengembalikan nilai tingkat keparahan kesalahan yang memanggil blok dalam CATCH . Jika ERROR_SEVERITY berjalan di blok luar CATCH , ia mengembalikan nilai tingkat keparahan kesalahan dari kesalahan yang memanggil blok luar CATCH tersebut.
Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)
J. Menggunakan ERROR_SEVERITY dalam blok CATCH
Contoh ini menunjukkan prosedur tersimpan yang menghasilkan kesalahan divide-by-zero.
ERROR_SEVERITY mengembalikan nilai tingkat keparahan kesalahan tersebut.
BEGIN TRY
-- Generate a divide-by-zero error.
SELECT 1 / 0;
END TRY
BEGIN CATCH
SELECT ERROR_SEVERITY() AS ErrorSeverity;
END CATCH
GO
Berikut set hasilnya.
-----------
(0 row(s) affected)
ErrorSeverity
-------------
16
(1 row(s) affected)
B. Gunakan ERROR_SEVERITY dalam blok CATCH dengan alat penanganan kesalahan lainnya
Contoh ini menunjukkan SELECT pernyataan yang menghasilkan kesalahan dibagi dengan nol. Prosedur tersimpan mengembalikan informasi tentang kesalahan.
BEGIN TRY
-- Generate a divide-by-zero error.
SELECT 1 / 0;
END TRY
BEGIN CATCH
SELECT ERROR_NUMBER() AS ErrorNumber,
ERROR_SEVERITY() AS ErrorSeverity,
ERROR_STATE() AS ErrorState,
ERROR_PROCEDURE() AS ErrorProcedure,
ERROR_LINE() AS ErrorLine,
ERROR_MESSAGE() AS ErrorMessage;
END CATCH
GO
Berikut set hasilnya.
-----------
(0 row(s) affected)
ErrorNumber ErrorSeverity ErrorState ErrorProcedure ErrorLine ErrorMessage
----------- ------------- ----------- --------------- ----------- ----------------------------------
8134 16 1 NULL 4 Divide by zero error encountered.
(1 row(s) affected)