라이브러리

[PHP] mysqli::savepoint - 명명된 트랜잭션 저장점 설정




mysqli::savepoint

mysqli::savepoint은 MySQLi 확장 함수의 일부로, 트랜잭션 내에서 저장점을 만들 수 있는 메소드입니다. 저장점은 트랜잭션 내에서 특정 지점을 기억하고, 필요할 때 다시 돌아갈 수 있는 기능을 제공합니다.

사용법

mysqli::savepoint 메소드는 다음과 같이 사용할 수 있습니다.

#hostingforum.kr
php

mysqli->savepoint($name);



- `$name` : 저장점의 이름입니다. 문자열로 입력합니다.

예제

#hostingforum.kr
php

// MySQLi 연결

$conn = new mysqli("localhost", "username", "password", "database");



// 연결이 성공했는지 확인

if ($conn->connect_error) {

    die("연결 실패: " . $conn->connect_error);

}



// 트랜잭션 시작

$conn->begin_transaction();



// 저장점 만들기

$conn->savepoint("savepoint1");



// 데이터 삽입

$conn->query("INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com')");



// 저장점 만들기

$conn->savepoint("savepoint2");



// 데이터 삽입

$conn->query("INSERT INTO users (name, email) VALUES ('Jane Doe', 'jane@example.com')");



// 저장점 삭제

$conn->release_savepoint("savepoint2");



// 데이터 삭제

$conn->query("DELETE FROM users WHERE name = 'Jane Doe'");



// 트랜잭션 커밋

$conn->commit();



// MySQLi 연결 종료

$conn->close();



예제 설명

이 예제는 MySQLi 연결을 통해 트랜잭션을 시작하고, 저장점을 만들고, 데이터를 삽입하고, 삭제하고, 트랜잭션을 커밋하는 과정을 보여줍니다. 저장점은 트랜잭션 내에서 특정 지점을 기억하고, 필요할 때 다시 돌아갈 수 있습니다.

주의

- 저장점은 트랜잭션 내에서만 사용할 수 있습니다.
- 저장점은 트랜잭션 내에서만 삭제할 수 있습니다.
- 저장점은 트랜잭션 커밋 또는 롤백과 함께 삭제됩니다.

참고

- MySQLi 확장 함수는 PHP 5.3.6 이상에서 사용할 수 있습니다.
- MySQLi 확장 함수는 MySQL 5.7.8 이상에서 사용할 수 있습니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 380 페이지

검색

게시물 검색