제목 | 트랜잭션 구현 할 때 각 그룹을 완벽모드로 실행 할 때 어떻게 해야 하나요? | ||
---|---|---|---|
글쓴이 | lzao | 작성시각 | 2014/06/18 19:36:05 |
|
|||
테이블 구조는 테이블 컬럼이 두개고 각 aa, bb 입니다. 둘다 int형입니다. $this->db->trans_start(); $this->db->query(" INSERT INTO test.test (`aa`, `bb`) VALUES (3,3);"); $this->db->trans_complete(); $this->db->trans_start(); $this->db->query("UPDATE test.test SET `aaa` = 3 WHERE `aa` = 5 "); $this->db->trans_complete(); 이런 소스를 짰는데 제가 테스트 해보고 싶은 건 위의 쿼리가 맞고 아래의 쿼리가 틀리다면 각 트랜잭션 그룹이 하나처럼 행동하는지 알고 싶습니다.. 위의 소스 대로 해봤는데 트랜잭션 그룹이 각각 커밋 되더라구요 코드이그나이터의 트랜잭션은 기본적으로 완벽모드를 지원한다고 하는데 제가 소스를 잘 못 짠건가요? |
|||
다음글 | 포럼소스 main(부분) 질문올립니다! (2) | ||
이전글 | 마냐 공개보드 소스 설치 문의 (1) | ||
kaido
/
2014/06/18 22:17:38 /
추천
0
|
lzao
/
2014/06/19 11:14:26 /
추천
0
kaldo님 답변 감사합니다.
트랜잭션을 맞게 구현하려면 kaldo님 처럼 하는게 맞긴 한데 제가 알고 싶은건 트랜잭션을 두개 선언하고 각각의 그룹 중에 하나라도 실패하면 모든 트랜잭션 그룹들이 rollback이 되는 지 알고 싶습니다. |
한대승(불의회상)
/
2014/06/19 11:33:51 /
추천
0
그룹이라는 의미는 start와 complete 사이의 문장을 그룹으로 본다는 의미 입니다.
complete가 호출된 시점에 롤백하거나 커밋을 하기때문에 관련된 SQL문장은 kaido님이 예시 한 것처럼 묶어 주셔야 합니다. |
lzao
/
2014/06/19 13:24:47 /
추천
0
불의회상님 답변 감사합니다.
그럼 그룹이 각 쿼리문장이 그룹이 되는거네요?? 두분 모두 답변 정말 감사합니다. |