sql >> Database >  >> RDS >> Sqlserver

SQL Server 2008 -- query's parallel uitvoeren

Het eerste idee is om aparte threads en aparte verbindingen te hebben, maar ik denk dat je het kunt beheren met meerdere verbindingen in een enkele thread met behulp van asynchrone callbacks:

string[] tables = new string[] { "TableA", "TableB", "TableC" ... };
var runningCommands = new List<SqlCommand>();
foreach(var table in tables)
{
  var conn = new SqlConnection(...);
  conn.Open();
  var cmd = new SqlCommand("DELETE FROM " + table + " WHERE id = @id");
  cmd.Parameters.Add(new SqlParameter("@id", id);
  cmd.BeginExecuteNonQuery(); 
  runningCommands.Add(cmd);
}
// now wait for all of them to finish executing
foreach(var cmd in runningCommands)
{
  cmd.EndExecuteNonQuery();
  cmd.Connection.Close();
}


  1. Fout:Client ondersteunt het door de server gevraagde authenticatieprotocol niet; overweeg om MySQL-client te upgraden

  2. Hoe de groei van maand tot maand in PostgreSQL te berekenen?

  3. MySql die standaardwaarde selecteert als er geen resultaten zijn?

  4. Postgres jsonb zoeken in array met grotere operator (met jsonb_array_elements)