SQL Server에서 데이터베이스를 사용하는 .NET 프로젝트를 작성했습니다. 나는 Linq-to-SQL을 사용하고 있는데, 때로는 프로젝트가 프로젝트의 일부에서 예외 (Constraint)를 던져서이 같은 오류가 데이터베이스의 다른 일을 할 때 프로젝트의 다른 부분에 계속 표시됩니다. 삽입을 할 때와 마찬가지로 삭제 전에 예외가 발생하면 삭제 예외가 발생하고 닫고 프로젝트를 다시 열 때까지이 방법으로 유지됩니다. 내 주요 문제는 내 온라인 프로젝트에서 이런 일이 발생하면 내 프로젝트의이 오류로 인해 필자가 온라인에서 테스트하고있는 프로젝트에서 문제가 발생한다 (나는 같은 데이터베이스를 사용한다). 이 예외가 메모리 또는 뭔가에 있지만 나는 두통을 많이 일으키는 지 모르겠다. 내가 잘못SQL Server가 예외를 계속 throw하는 이유는 무엇입니까?
var actividad = (from ta in modeloDatos.tActividad
where ta.id_actividad == idActividad
select ta).Single()
modeloDatos.tActividad.DeleteOnSubmit(actividad);
modeloDatos.SubmitChanges();
return true;
}
catch (Exception ex)
{
return false;
}
ex = {"The DELETE statement conflicted with the REFERENCE constraint \"FK_tActividadRiesgo_tActividad\". The conflict occurred in database \"DBDESARROLLO\", table \"dbo.tActividadRiesgo\".\r\nThe statement has been terminated."}
을 (캐스케이드 삭제하고 있지) 삭제 할 수 있으며이 코드에서 (삽입)을 갈 때
proceso.id_encabezado = encabezadoProceso.id_encabezado;
proceso.id_procesopadre = idProcesoPadre;
modeloDatos.tProceso.InsertOnSubmit(proceso);
modeloDatos.SubmitChanges();
catch (Exception ex)
{
return -1;
}
나를 던져 때
이 예외 그게 전부입니다 나를 던져 내가하는 일과 아무런 관련이없는 똑같은 예외
ex = {"The DELETE statement conflicted with the REFERENCE constraint \"FK_tActividadRiesgo_tActividad\". The conflict occurred in database \"DBDESARROLLO\", table \"dbo.tActividadRiesgo\".\r\nThe statement has been terminated."}
나는 실제로 difer를 사용하고있다. 엔트 테이블.
생성 된 주변 코드 및 예외 - 그렇지 않으면 우리는 그냥 마법 8 공을보고 추측을해야합니다. – nos
magic 8 ball은 ODBC 연결에 오류가 있다고 생각합니까? – VoodooChild
@VoodooChild : 물론입니다! - http://web.ics.purdue.edu/~ssanty/cgi-bin/eightball.cgi –