De flesta människor gör detta på följande sätt:
INSERT dbo.Users(Username)
VALUES('my new name');
SELECT NewID = SCOPE_IDENTITY();
(Eller istället för en fråga, tilldela den till en variabel.)
Så det är egentligen inte två frågor mot tabellen ...
Men det finns också följande sätt:
INSERT dbo.Users(Username)
OUTPUT inserted.ID
VALUES('my new name');
Du kommer inte riktigt att kunna hämta detta med ExecuteNonQuery
dock.