Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Wykonaj polecenie Wstaw i zwróć wstawiony identyfikator w Sql

Poniższe rozwiązanie będzie działać z serwerem sql 2005 i nowszym. Możesz użyć danych wyjściowych, aby uzyskać wymagane pole. zamiast id możesz wpisać swój klucz, który chcesz zwrócić. zrób to w ten sposób

DLA SQL SERVER 2005 i nowsze

    using(SqlCommand cmd=new SqlCommand("INSERT INTO Mem_Basic(Mem_Na,Mem_Occ) output INSERTED.ID VALUES(@na,@occ)",con))
    {
        cmd.Parameters.AddWithValue("@na", Mem_NA);
        cmd.Parameters.AddWithValue("@occ", Mem_Occ);
        con.Open();

        int modified =(int)cmd.ExecuteScalar();

        if (con.State == System.Data.ConnectionState.Open) 
            con.Close();

        return modified;
    }
}

DLA poprzednich wersji

    using(SqlCommand cmd=new SqlCommand("INSERT INTO Mem_Basic(Mem_Na,Mem_Occ)  VALUES(@na,@occ);SELECT SCOPE_IDENTITY();",con))
    {
        cmd.Parameters.AddWithValue("@na", Mem_NA);
        cmd.Parameters.AddWithValue("@occ", Mem_Occ);
        con.Open();

        int modified = Convert.ToInt32(cmd.ExecuteScalar());

        if (con.State == System.Data.ConnectionState.Open) con.Close();
            return modified;
    }
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak połączyć wiele wierszy w listę rozdzielaną przecinkami w SQL Server 2005?

  2. Sprawdź, czy wiersz istnieje, w przeciwnym razie wstaw

  3. Przywróć bazę danych w SQL Server 2017

  4. Zwróć informacje o kolumnie dla procedury przechowywanej w programie SQL Server:sp_sproc_columns

  5. Jak ograniczyć NULL jako parametr do procedury składowanej SQL Server?