Verwenden Sie die Ausgangsklausel von 2005:
DECLARE @output TABLE (id int)
Insert into A (fname, lname)
OUTPUT inserted.ID INTO @output
SELECT fname, lname FROM B
select * from @output
Jetzt hat Ihre Tabellenvariable die Identitätswerte aller Zeilen, die Sie einfügen.