CI 묻고 답하기

제목 트랜잭션 관련 질문입니다.
글쓴이 neo천 작성시각 2014/05/08 18:04:37
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 13818   RSS
트랜잭션을 한번도 안써봐서.. 잘 몰라서 질문드립니다.

트랜잭션이 어떤기능인지는 알고 있는데, 써보질않아서 이해할수있는 정도는아닙니다.

다만 유저가이드를 확인했는데 트랜잭션을

$this->db->trans_start();
$this->db->query('AN SQL QUERY...');
$this->db->query('ANOTHER QUERY...');
$this->db->trans_complete();

이런식으로 간단하게 사용하는거 같습니다.

여기서 생기는 의문점이 하나 있는데..

제가 궁금한 부분은  $this->db->query를 사용하는 걸 보니 모델 부분으로 가정할수 있겠고,

만약에 !! 만약에.. 컨트롤러에서 모델을 호출하여 사용할때

ex)
$check = $this -> mObjOrderInfo -> getModelMNG() -> registerDbInfo();  <<-이쪽은 컨트롤러부분

ex)컨트롤러의 어느함수 내부
$this->db->trans_start();

$check = $this -> mObjOrderInfo -> getModelMNG() -> registerDbInfo();
$check = $this -> mObjNoteInfo -> getModelMNG() -> registerDbInfo();
$this->db->trans_complete();

이런식으로 가능한지요??
안된다면 왜그런지도 알고 싶습니다.

코딩도안해보고 이런 질문드리는게 잘못된건알지만,

궁금한부분이 너무 많아서...ㅠㅠ
 다음글 이미지 경로 질문 있습니다 ^^ (6)
 이전글 뜬금없는 REST와 AJAX질문입니다. (4)

댓글

수야디벨 / 2014/05/09 00:12:33 / 추천 0
별다른 감정이 있는건 아니지만 ..

질문하신 내용은 본인이 모르기 때문에 질문을 한게 아니라 ,

직접 코딩하기 귀찮아서 글로 물어보고 답을 읽어나 보자 .  정도로 보입니다.

말씀 하신 것 처럼 , 해보면 알 수 있는건데 ..

알려드리는건 쉽지만 ,

본인이 해결할 수 있는 부분은 한번 해보시는게 어떠실까요?

해보고 안되면 , 그때 다시 질문해주세요~
한대승(불의회상) / 2014/05/09 10:35:56 / 추천 0
모델 내부에 어떤식으로 코딩되어 있느냐에 따라 달라집니다.
모델코드 작성시 디비 관련된 부분만 작성된다는 보장은 없으니까요.

mysql을 사용하면서 테이블 엔진이 innoDB가 아니라면 트랜젝션 코드를 집어 넣어도 작동하지 않는다는점 기억 하세요.
들국화 / 2014/05/09 11:09:29 / 추천 0
기억이 잘 안나긴 하는데..  innoDB말고도 트렌젝션 지원하는 엔진이 더 있는것 같은데요. ^^
트렌젝션은 커밋시점을 미루는 작업 입니다. 커밋하느냐 롤백하느냐...
neo천 / 2014/05/09 20:06:51 / 추천 0
답변 달아주신분들 감사합니다.

질문이라는게 궁금한점을 물어볼수 있는 것도 질문이라고 생각합니다.

해보지않고 질문했다고 해서 , 질타를 받아야할 이유가 있는지요.

위에서 말했다시피, 잘못된건 알지만, 저는 궁금한게 너무많습니다.

하지만 전부 일일이 할 시간이 안되기때문에  그럴 사정이 있기때문에 글을 올렸습니다.

코딩을 대신 해달라는것도아니고, 이런 상황에 대한 구현이 가능할까 정도를 물어봤을 뿐인데.

<span neue,helvetica,arial,sans-serif"="">직접 코딩하기 귀찮아서 글로 물어보고 답을 읽어나 보자 .이런식의 비아냥은 기분이 별로군요.

물론 물어보고 답을 읽어보자는 말은 틀린말이 아니지만..