Home » » The new way to handle errors in SQL 2005 tSQL (using TRY)

The new way to handle errors in SQL 2005 tSQL (using TRY)

The syntax is so straight-forward, you might think Microsoft outsourced the work. Here you are:

/*
Error Handling
*/

-- old school, could not prevent exception display

select 4/0
if (@@error = 8134)
print 'Error Encountered'
print 'Execution Continues'

-- try catch

begin try
select 4/0
print 'Execution Halts'
end try
begin catch
print @@error
print error_message()
print ' error caught'
end catch

-- compile error

BEGIN TRY
PRINT 'Inside Try-Block'
SELECT ** FROM T /* will cause syntax error */
END TRY
BEGIN CATCH
print @@error
print error_message()
print ' error caught'
END CATCH

-- "lower" error (compile not until execution)

BEGIN TRY
PRINT 'Inside Try-Block'
EXEC ('SELECT ** FROM T ') /* compile error in the lower scope */
END TRY
BEGIN CATCH
print @@error
print error_message()
print ' error caught'
END CATCH


0 comments:

Post a Comment

Popular Posts

Powered by Blogger.
.comment-content a {display: none;}