PDO::beginTransaction
을 실행하면 어떤 이유에서든 스크립트가 종료되고 변경 사항이 명시 적으로 커밋되지 않은 경우 (오류, 예외, exit
/die
등) 트랜잭션이 실행됩니다. 롤백 할 수 있습니다.PDO :: rollBack 또는 __destruct
마찬가지로 스크립트가 끝나면 모든 개체에있는 __destruct
메서드가 마찬가지로 실행됩니다.
내 질문은, 스크립트가 끝나고 먼저 PDO::rollBack
또는 __destruct
메쏘드에서 호출 된 미해결 데이터베이스 트랜잭션이 있습니까?
놀랍게도 google을 사용하여 진행중인 트랜잭션이있는 동안 PHP가 종료되면 변경 사항이 $ dbh-> rollback()이 호출 된 것처럼 롤백된다는 명시적인 설명을 찾습니다. 트랜잭션이 시작된 연결이 닫히면 실제로 데이터베이스의 속성 인 반면 PHP 및 PDO와 관련하여 검색 중이기 때문에 이것이라고 생각합니다! – sootsnoot