VisualStudio删除(多表)

Posted 牧云的少年

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VisualStudio删除(多表)相关的知识,希望对你有一定的参考价值。

                  VisualStudio删除(多表)

多表删除之前需要把有关联的表查询出来,看看是否有在使用该学院的信息,因为此行为是直接删除里面的数据,但因为有关联其他的表不可直接删除,除非把所有关联的表都删除。

如果在不知道表和哪些表有关联的信息可以打开模态表(红圈里是需要删除数据的表,本来的ID就是academeID。 蓝色的的则是关联表关联他的ID就表示这些表中数据都和这表的数据有关联)

首先用 Count方法吧对应的ID表中的数据查询出来

Int countSpecialty = myModel.SYS_Specialty.Count(m => m.academeID == AcademeID);

int countGrade = myModel.SYS_Grade.Count(m => m.academeID == AcademeID);

int countClass = myModel.SYS_Class.Count(m => m.academeID == AcademeID);

int countStudent = myModel.SYS_Student.Count(m => m.academeID == AcademeID);

其次用if语句判断查询出来是否有数据在对接要删除的表中,如果没有就可以删除。

如果有就判定不可删除

if ((countSpecialty + countGrade + countClass + countStudent) == 0)

最后用where查询语句查询出要删的数据用查询语句和if判断后即可删除

SYS_Academe Academe = myModel.SYS_Academe.Where(m => m.academeID == AcademeID).Single();

myModel.SYS_Academe.Remove(Academe);

if (myModel.SaveChanges() > 0)

控制器中的删除方法代码:

其中也用了try catch语句作用于数据判断,如果数据异常则很快就能找出问题。

以上是关于VisualStudio删除(多表)的主要内容,如果未能解决你的问题,请参考以下文章

多表修改和多表删除

MySQL基础入门学习10多表删除

MySQL中多表删除方法(转载)

mysql多表删除实例

MySQL多表关联数据同时删除

Oracle 多表联合删除?--转