
mysqli::autocommit은 MySQL의 autocommit 모드를 제어하는 옵션입니다. 기본적으로 autocommit은 enabled 상태입니다.
autocommit이 enabled 상태일 때, INSERT, UPDATE, DELETE 쿼리를 실행하면 데이터가 자동으로 COMMIT 됩니다. 이 말은, 각 쿼리가 독립적인 트랜잭션으로 처리되며, 이전 쿼리의 결과가 다음 쿼리에 영향을 미치지 않는다는 뜻입니다.
autocommit이 disabled 상태일 때, 트랜잭션을 COMMIT 하기 위해서는 명시적으로 COMMIT 쿼리를 실행해야 합니다. 예를 들어, 다음과 같이 쿼리를 실행할 수 있습니다.
#hostingforum.kr
php
mysqli->autocommit(false);
mysqli->query("INSERT INTO 테이블명 VALUES ('값1', '값2')");
mysqli->query("UPDATE 테이블명 SET 컬럼명 = '값' WHERE 조건");
mysqli->commit(); // 트랜잭션을 COMMIT 합니다.
또는, ROLLBACK 쿼리를 실행하여 트랜잭션을 취소할 수도 있습니다.
#hostingforum.kr
php
mysqli->autocommit(false);
mysqli->query("INSERT INTO 테이블명 VALUES ('값1', '값2')");
mysqli->query("UPDATE 테이블명 SET 컬럼명 = '값' WHERE 조건");
mysqli->rollback(); // 트랜잭션을 취소합니다.
autocommit 모드를 제어하는 옵션은 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
php
mysqli->autocommit(true); // autocommit 모드를 enabled로 설정합니다.
mysqli->autocommit(false); // autocommit 모드를 disabled로 설정합니다.
2025-05-18 13:05