sql >> Database teknologi >  >> RDS >> Mysql

Indsæt data i MySQL i flere tabeller i C# effektivt

Med henvisning til dit svar ville jeg erstatte

using (MySqlCommand myCmdNested = new MySqlCommand(cCommand, mConnection))
{
    foreach (string Code in item.Codes)
    {
        myCmdNested.Parameters.Add(new MySqlParameter("@UserID", UID));
        myCmdNested.Parameters.Add(new MySqlParameter("@Code", Code));
        myCmdNested.ExecuteNonQuery();
    }
}

med

List<string> lCodes = new List<string>();
foreach (string code in item.Codes)
{
    lCodes.Add(String.Format("('{0}','{1}')", UID, MySqlHelper.EscapeString(code)));
}
string cCommand = "INSERT INTO Code (UserID, Code) VALUES " + string.Join(",", lCodes);
using (MySqlCommand myCmdNested = new MySqlCommand(cCommand, mConnection))
{
    myCmdNested.ExecuteNonQuery();
}

der genererer én insert-sætning i stedet for item.Count



  1. Sådan fungerer Scale()-funktionen i PostgreSQL

  2. Top 50 SQL Server-interviewspørgsmål, du skal forberede i 2022

  3. PHP isset() med flere parametre

  4. automatisk opdatere mysql-feltet baseret på værdien af ​​andet felt