sql >> Database teknologi >  >> RDS >> Sqlserver

Returner sidst indsatte ID uden at bruge en anden forespørgsel

De fleste mennesker gør dette på følgende måde:

INSERT dbo.Users(Username)
VALUES('my new name');

SELECT NewID = SCOPE_IDENTITY();

(Eller i stedet for en forespørgsel, tildele den til en variabel.)

Så det er egentlig ikke to forespørgsler mod bordet ...

Men der er også følgende måde:

INSERT dbo.Users(Username)
OUTPUT inserted.ID
VALUES('my new name');

Du vil ikke rigtig være i stand til at hente dette med ExecuteNonQuery dog.



  1. Brug af Python og MySQL i ETL-processen:SQLAlchemy

  2. hvordan man indsætter aktuel dato i et DATO-felt i formatet dd/mm/åååå i oracle

  3. Hvordan tester man tabeller forbundet med fremmednøgler?

  4. NOT IN i postgresql virker ikke