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

Vrácená hodnota z příkazu SQL Server Insert pomocí c#

SCOPE_IDENTITY vrátí poslední hodnotu identity vloženou do sloupce identity ve stejném oboru. Rozsah je modul:uložená procedura, spouštěč, funkce nebo dávka. Proto jsou dva příkazy ve stejném oboru, pokud jsou ve stejné uložené proceduře, funkci nebo dávce.

Pomocí SqlCommand.ExecuteScalar můžete provést příkaz insert a získat nové ID v jednom dotazu.

using (var con = new SqlConnection(ConnectionString)) {
    int newID;
    var cmd = "INSERT INTO foo (column_name)VALUES (@Value);SELECT CAST(scope_identity() AS int)";
    using (var insertCommand = new SqlCommand(cmd, con)) {
        insertCommand.Parameters.AddWithValue("@Value", "bar");
        con.Open();
        newID = (int)insertCommand.ExecuteScalar();
    }
}


  1. MySQL – Udělejte ze stávajícího pole jedinečný

  2. jak používat položky tns s ovladači makromédií pro Oracle

  3. SQLite - Nelze otevřít soubor databáze

  4. Salesforce SOQL z Javy