문제

그레인타 문서를 읽고 어떤 이유로 업데이트가 실패한 경우에 Greendao 문서를 읽고 경고하는 방법에 대한 단서를 찾지 못했습니다.

업데이트 (T 엔티티)는 아무 것도 반환하지 않으며 오류가 발생하지 않음 ...

업데이트 프로세스가 실패했는지 여부를 알 수있는 방법이 있습니까?

고맙습니다.

도움이 되었습니까?

해결책

업데이트가 작동하지 않으면 SQLException ...에SQLException extends [RuntimeException][2] it doesn't have to be handled and thus doesn't have to be declared withTHROWS`.

updateFailure의 유일한 이유는 현재 생각할 수 있습니다 :

  • 업데이트 개체의 기본 키가 비어 있습니다.
  • 업데이트 개체의 기본 키는 DB에서 찾을 수 없습니다.
  • 업데이트는 일부 제약 조건 (즉, 고유 한)을 위반합니다.
  • 데이터베이스 또는 파일 시스템이 손상되었습니다.

그래서 일반적으로 제약 조건을 위반하지 않을 것입니다. 기본 키에주의를 기울이지 않으면 업데이트가 실패하지 않습니다.

확실하지 않은 경우 업데이트를 CATCH-BLOCK으로 탐색 할 수 있습니다.

try {
    myEntityDao.update(myObj);
} catch (SQLException ex) {
    // handle the failure here
}
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top