För att infoga en rad och få dess identitet behöver du inte blockera alla andra kommandon. Använd bara en transaktion i kombination med SCOPE_IDENTITY :
BEGIN TRAN;
INSERT INTO MyTable (MyColumn)
VALUES ('MyValue');
SELECT SCOPE_IDENTITY();
COMMIT TRAN;
Mer om SCOPE_IDENTITY på MSDN
.