제목 | codegniter트랜잭션 관련 문의 사항이 있습니다. | ||
---|---|---|---|
카테고리 | PHP | ||
글쓴이 | 순돌이33 | 작성시각 | 2018/04/30 13:06:46 |
|
|||
안녕하세요 php로 다음과 같은 기능을 개발하려고 하는데 어떻게 하면 될지 문의 드립니다. 사용자가 excel로 여러개의 Row로 구성된 데이타를 등록 하는데요 예를 들면 500개의 Row를 등록 시 30, 400번째 Row에서 에러가 발생해도 나머지 행의 데이타는 저장이 되었으면 합니다. (에러에 대한 log는 남김) // controller 코드 for( $i = 0 ; i < 엑셀row 수 ; $i++) { $this->db->trans_begin(); //트랜잭션 시작 //row 데[이타 처리 if( $this->db->trans_status() == FALSE) { $this->db->trans_rollback(); $is_error = TRUE; } else { $this->db->trans_commit(); } } 위와 같이 하면 전체 데이타에 대한 Transaction 처리가 에러가 발생하면 이전 데이타도 같이 rollback이 될텐데요 Transaction을 전체 데이타와 Row데이타로 구분해서 처리가 가능 할까요?
|
|||
다음글 | 네이버 웹마스터도구 사이트맵 등록법 ㅠ (5) | ||
이전글 | query builder 에서 CASE 사용 방법 문의 (1) | ||
변종원(웅파)
/
2018/04/30 13:10:12 /
추천
0
|
순돌이33
/
2018/04/30 13:48:30 /
추천
0
답변 감사드립니다. 그러면 500개의 Row를 올리다 한개의 row 때문에 에러가 나도 수정 후 다시 데이타를 등록하는 방법만 가능한가 보네요.. -.-;; |
변종원(웅파)
/
2018/04/30 16:54:20 /
추천
0
php try catch 찾아보세요. ^^
|
트랜잭션을 for문안에서 실행하면 되긴 하는데 의미가 없구요.
차라리 try catch를 이용해서 로그만 남기시도록 하시면 될 것 같네요.