0
删除在MySQL数据我有拖表中的MySql超时使用MVC Asp.net
学生:
sCode sName depart
等级
gID grade sCode
我想删除学生和相关成绩基于出发参数。
我用我的studentContrller删除出发行动:
public ActionResult DeleteDepartConfirmd(string Depart)
{
var codes = db.students.Where(d => d.Depart == Depart).Select(s => s.sCode);
var grades = db.grades.Where(s => codes.Contains(s.sCode));
db.grades.RemoveRange(grades);
db.SaveChanges();
var students = db.students.Where(d => d.Depart == Depart);
db.students.RemoveRange(students);
db.SaveChanges();
return RedirectToAction("studentsByDepart");
}
问题occourd在第一阶段中成绩表中删除记录。 该过程删除浏览器中发生的几条记录(3-10)记录和超时,因为它需要很长时间。 我的问题:我的删除方法是问题吗?如果是的话我怎么才能让它变得更好?
问题发生在db.SaveChanges();
注:我使用谷歌的云像MySQL主机
谢谢,但我想删除1000多条记录。而增加时间并不能解决问题。我可以有一种批量删除的方法。 – khorshid
尝试使用foreach循环删除。 foreach(var agShare in agShares){ context.SecurityDataShares.Remove(agShare); } context.SaveChanges(); –