It depends on the severity of the error. Higher severity errors cause a disconnect of the offending process. Those cannot be trapped.
For the other procedures, in SQL Server 2005, you can use TRY/CATCH constructs to get the job done. This is an introduction to the topic[/url], but there's a lot more to learn.
"The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
- Theodore Roosevelt
Author of:
SQL Server Execution Plans
SQL Server Query Performance Tuning