Nella stesura di stored procedure, risulta spesso necessario gestire eventuali errori di esecuzione della stored stessa.
Il blocco di codice sql può essere racchiuso tra
BEGIN TRY
— Codice dalla stored per la quale si vuole gestire l’errore
END TRY
BEGIN CATCH
–GESTIONE ERRORE
END CATCH
Tra il blocco del catch è possibile catturare l’esatto messaggio dell’errore. Di seguito un breve esempio:
BEGIN TRY -- supponiamo di avere una divisione per zero che causa errore -- durante l'esecuzione della stored. 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;
Oppure possiamo concatenare tutte le informazioni in un’unica stringa, ovvero:
Continua la lettura “Cattura errore SQLServer – TRY CATCH – RAISERROR”