TIP게시판

제목 mysql 부분적인 에러 핸들링 처리
글쓴이 EziX 작성시각 2011/12/20 22:30:11
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 16121   RSS

아래와 같은 문제가 생겨서.. 찾아서 해결하고 남길려다보니..
개인 기록을 여기에 남기게 되는군요..ㅎㅎ

팁폭탄입니다. ^^
팁이라기보단 그냥 잘 모를수 있는 CI사용법이랍니다.

여기에 누군가가 질문도 올렸더군요.

공식적으로 DB의 에러가 보이게 설정이 되어있을때.. 아래와 같이 설정되어 있겠지요.

$db['default']['db_debug'] = TRUE;

에러 핸들링 하고 싶은 부분의 앞부분에

$this->db->db_debug = FALSE;
를 넣습니다.

그 후에 처리되는 mysql 에러는 페이지에 나타나지 않게 됩니다.
(에러가 나든말든 넘어갑니다.)

DB처리 후에
에러의 내용을 보고 싶을땐
$this->db->_error_message()
$this->db->_error_number()
두가지가 있네요.
mysql 함수의 그것과 같습니다.

CI의 공식적인 함수를 이용하면...
http://www.codeigniter-kr.org/user_guide_2.1.0/database/call_function.html

이 페이지를 참고하여 함수호출로 에러를 잡아내면 됩니다.
$this->db->call_function('error')
$this->db->call_function('errno')
이런식이 되겠군요.

즐코딩요~
 

 다음글 hook에서 선언한 변수를 컨트롤러에서 사용하기 (4)
 이전글 컨트롤러 외부에서의 종료방법 (1)

댓글

한대승(불의회상) / 2011/12/21 13:56:15 / 추천 0
메뉴얼을 읽었지만 어디다 쓰지라고 생각하고 지나쳤던 부분인데 활용도가 높겠네요.
좋은 정보 감사 합니다. ^^
터프키드 / 2011/12/29 10:06:40 / 추천 0
좋은 팁 감사합니다~