CI 묻고 답하기

제목 DB Insert시 에러 핸들링 방법?
글쓴이 하품 작성시각 2013/11/19 12:10:42
댓글 : 1 추천 : 0 스크랩 : 0 조회수 : 15264   RSS

모델에서 db insert 에러시 컨트롤러에게 에러가 났음을 알리고 싶습니다.
이걸 처리하려고 다음과 같이 모델 코드를 작성해보았는데...

if($this->db->insert('table', $data)) {
   return $this->db->insert_id();
} else {
   return 'error';
}

혹은

$this->db->insert('table', $data)

if($this->db->affected_rows() > 0) {
   return $this->db->insert_id();
} else {
   return 'error';
}

이렇게 작성하고 일부러 유니크 값 중복을 발생하도록 해서 돌려보았습니다.
그런데 그냥 에러 페이지로 넘어갈뿐...
어떻게 핸들링을 해야 할지 모르겠어요.

CI에서는 저런 DB에러시 컨트롤러에서 에러가 났음을 알아채서 핸들링할 방도가전혀 없나요?
 다음글 Default값이 한글로 되어 있어서 값이 안불러지는거... (1)
 이전글 view에서 view로 데이터 전달이 가능한가요? (9)

댓글

가내수공업개발자 / 2013/11/19 12:44:41 / 추천 0
 해보진 않았지만 try and catch 로 하면 안될까요?

$this->db->_error_message();(mysql_error equivalent)  $this->db->_error_number(); (mysql_errno equivalent)
try and catch 로 두개 종류를 잡아내면 어느정도 핸들링이 가능할듯 합니다만...