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
.