Is SQL Server’s 2005’s Exception Handling an Improvement?

At first, I was excited to read about the new TRY...CATCH exception handling in SQL Server 2005, but it feels like it has a serious flaw: only the last error message is returned in the Exception object! This is really annoying, both during development and in production. For example, if you make a mistake while trying to create a CONSTRAINT: -- Setup. IF EXISTS (SELECT * FROM sys.tables WHERE