
Session::startTransaction을 호출하면 데이터베이스 트랜잭션을 시작하는 것이 맞습니다. 이 메서드는 데이터베이스 커넥션을 잠금 상태로 유지합니다.
이 때, 데이터베이스 커넥션이 이미 열려 있는 경우, Session::startTransaction을 호출하면 트랜잭션을 시작하고, 데이터베이스 커넥션을 잠금 상태로 유지합니다.
트랜잭션의 상태를 확인하기 위해서는 Session::isTransactionActive() 메서드를 사용할 수 있습니다. 이 메서드는 현재 트랜잭션이 활성화되어 있는지 여부를 반환합니다.
트랜잭션을 롤백하기 위해서는 Session::rollBack() 메서드를 사용할 수 있습니다. 이 메서드는 현재 트랜잭션을 롤백합니다.
트랜잭션을 커밋하기 위해서는 Session::commit() 메서드를 사용할 수 있습니다. 이 메서드는 현재 트랜잭션을 커밋합니다.
예를 들어, 다음 코드는 트랜잭션을 시작하고, 데이터베이스 쿼리를 실행한 후 트랜잭션을 커밋하는 예제입니다.
#hostingforum.kr
php
// 트랜잭션을 시작합니다.
$this->session->startTransaction();
// 데이터베이스 쿼리를 실행합니다.
$this->db->query("INSERT INTO table_name VALUES ('value1', 'value2')");
// 트랜잭션을 커밋합니다.
$this->session->commit();
또한, 트랜잭션을 롤백하는 예제는 다음과 같습니다.
#hostingforum.kr
php
// 트랜잭션을 시작합니다.
$this->session->startTransaction();
// 데이터베이스 쿼리를 실행합니다.
$this->db->query("INSERT INTO table_name VALUES ('value1', 'value2')");
// 트랜잭션을 롤백합니다.
$this->session->rollBack();
2025-03-12 13:30