
mysqli::release_savepoint은 savepoint를 해제하는 메서드입니다.
savepoint를 설정한 후 release_savepoint을 호출하면, 트랜잭션의 이전 상태로 돌아가게 됩니다.
이때, rollback은 호출되지 않습니다.
release_savepoint을 호출한 후, 트랜잭션은 이전 savepoint 이전의 상태로 돌아가고, savepoint는 해제됩니다.
즉, release_savepoint을 호출하면 트랜잭션의 이전 상태로 돌아가고, savepoint가 해제됩니다.
예를 들어, 다음 코드를 보겠습니다.
#hostingforum.kr
php
$mysqli = new mysqli("localhost", "username", "password", "database");
$mysqli->autocommit(false);
$mysqli->query("INSERT INTO 테이블명 (컬럼명) VALUES ('값')");
$mysqli->query("SAVEPOINT savepoint1");
$mysqli->query("INSERT INTO 테이블명 (컬럼명) VALUES ('값')");
$mysqli->query("RELEASE SAVEPOINT savepoint1");
$mysqli->query("INSERT INTO 테이블명 (컬럼명) VALUES ('값')");
위 코드에서 release_savepoint을 호출하면, savepoint가 해제되고 트랜잭션의 이전 상태로 돌아갑니다.
이때, rollback은 호출되지 않습니다.
따라서, release_savepoint을 호출한 후 트랜잭션을 커밋하거나 롤백해야 합니다.
예를 들어, 다음 코드를 보겠습니다.
#hostingforum.kr
php
$mysqli->query("COMMIT");
또는
#hostingforum.kr
php
$mysqli->query("ROLLBACK");
2025-03-22 05:25