我在MySql中有拖曳表

学生们:

sCode sName depart


年级

gID grade sCode


我想根据“出发”参数删除学生和相关成绩。

我在我的studentContrller中使用了Delete Depart Action:

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


在删除成绩表中的记录的第一阶段出现问题。
该过程删除了几条记录(3-10)条记录,并且由于需要很长时间而在浏览器中发生了超时。
我的问题:是我的删除方法吗?如果是,我该如何做得更好?

该问题发生在db.SaveChanges();中。

注意:我使用Google Cloud作为MySql Host

最佳答案

尝试增加MySQL的超时时间。

看看这个类似的线程:
How can I change the default Mysql connection timeout when connecting through python?

08-06 16:43