sql >> Databáze >  >> RDS >> Sqlserver

Vrátit poslední vložené ID bez použití druhého dotazu

Většina lidí to dělá následujícím způsobem:

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

SELECT NewID = SCOPE_IDENTITY();

(Nebo místo dotazu přiřadit k proměnné.)

Takže to ve skutečnosti nejsou dva dotazy proti tabulce ...

Existuje však také následující způsob:

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

Pomocí ExecuteNonQuery to opravdu nebudete moci získat , ačkoli.



  1. Windows Azure SQL Database – sloupec automatického přírůstku identity přeskakuje hodnoty

  2. Automatizujte většinu aktualizačních dotazů v pl\sql

  3. Jak formátovat čísla v SQL Server

  4. PHP, obnovte stránku při vložení