What is an OUTPUT Clause Inside SQL Server ?
OUTPUT clause has accesses to inserted and deleted tables (virtual tables) just like triggers. OUTPUT clause can be used to return values to the client clause. OUTPUT clause can be used with INSERT, UPDATE, or DELETE to identify the actual rows affected by these statements. OUTPUT clause can generate a table variable, a permanent table, or a temporary table. Even though @@Identity will still work in SQL Server 2005.