
mysqli::savepoint를 사용하여 트랜잭션 내에서 중간점을 설정하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$conn = new mysqli('localhost', 'username', 'password', 'database');
$conn->autocommit(false);
$conn->query('START TRANSACTION');
// 중간점을 설정합니다.
$conn->query('SAVEPOINT savepoint1');
// 트랜잭션 내에서 작업을 수행합니다.
$conn->query('INSERT INTO 테이블명 (컬럼명1, 컬럼명2) VALUES ('값1', '값2')');
// rollback을 수행합니다.
$conn->query('ROLLBACK TO SAVEPOINT savepoint1');
// autocommit을 true로 설정하여 트랜잭션을 종료합니다.
$conn->autocommit(true);
위의 코드에서 SAVEPOINT를 사용하여 트랜잭션 내에서 중간점을 설정하고 rollback을 수행하는 방법은 다음과 같습니다.
1. 트랜잭션을 시작합니다. (`START TRANSACTION`)
2. 중간점을 설정합니다. (`SAVEPOINT savepoint1`)
3. 트랜잭션 내에서 작업을 수행합니다.
4. rollback을 수행합니다. (`ROLLBACK TO SAVEPOINT savepoint1`)
5. autocommit을 true로 설정하여 트랜잭션을 종료합니다. (`autocommit(true)`)
이러한 방법으로 SAVEPOINT를 사용하여 트랜잭션 내에서 중간점을 설정하고 rollback을 수행할 수 있습니다.
2025-03-25 13:50