De meeste mensen doen dit op de volgende manier:
INSERT dbo.Users(Username)
VALUES('my new name');
SELECT NewID = SCOPE_IDENTITY();
(Of in plaats van een query, die toe te wijzen aan een variabele.)
Het zijn dus niet echt twee zoekopdrachten tegen de tabel ...
Er is echter ook de volgende manier:
INSERT dbo.Users(Username)
OUTPUT inserted.ID
VALUES('my new name');
Je zult dit niet echt kunnen achterhalen met ExecuteNonQuery
, hoewel.