sql >> Databasteknik >  >> RDS >> Sqlserver

Utför Insert-kommandot och returnera infogat Id i Sql

Följande lösning fungerar med sql server 2005 och senare. Du kan använda utdata för att få det obligatoriska fältet. i stället för id kan du skriva din nyckel som du vill lämna tillbaka. gör så här

FÖR SQL SERVER 2005 och senare

    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;
    }
}

FÖR tidigare versioner

    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. LEN() vs DATALENGTH() i SQL Server

  2. körtidsfel:java.lang.ClassNotFoundException:com.mysql.jdbc.Driver

  3. Använder variabel i SQL LIKE-satsen

  4. Ny funktion för BYOC – Pausa och återuppta kluster