물어보기XpressEngine
조회 수 58 댓글 2

안녕하세요.

XE에서 트랜잭션 처리가 어떻게 이뤄지는지 문의 드립니다.

한 쓰레드에서 구간별로 트랙젹션 관리가 필요할 경우 아래와 같이 

begin() - commit() 블럭을 지정해서 처리하면 되는건가요?

 

$oDB = DB::getInstance();

$oDB->begin();

...

업무단위1

...

$oDB->commit(true);

 

$oDB->begin();

...

업무단위2

...

$oDB->commit(true);

 

 

그리고

$oDB = &DB::getInstance(); 와 

$oDB = DB::getInstance(); 의 차이점도 궁금하네요.

 

 

  • profile
    기진곰 2017.09.24 22:32:58

    맞습니다. 단, commit에 true를 넣을 필요는 없습니다.

    &는 PHP 4.x에서는 차이가 있었지만 지금은 무의미하고, 안 쓰는 것이 정석입니다.

  • profile
    카이로스 2017.09.24 22:33:59
    네.. 답변 감사합니다^^

서버에 요청 중입니다. 잠시만 기다려 주십시오...