이 글에서는 PHP에서 PDO의 트랜잭션 처리를 예제를 통해 분석합니다. 참고하실 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.
트랜잭션 처리에는 원자성, 일관성, 독립성, 내구성이라는 네 가지 특성이 있습니다.
모든 데이터베이스가 트랜잭션 처리를 지원하는 것은 아닙니다. PDO는 트랜잭션 처리를 수행할 수 있는 데이터베이스에 대해 트랜잭션 지원을 제공합니다.
트랜잭션 처리 구성 시 참고 사항:
1. PDO 자동 제출을 끄세요.
$pdo->setAttribute(PDO::ATTR_AUTOCOMMIT, false);
2. 거래 개시에 필요한 방법
$pdo->beginTransaction(); // 开启一个事务 $pdo->commit(); // 提交事务 $pdo->rollback(); // 回滚事务
3. 일반적인 트랜잭션 처리는 try...catch... 문에서 실행됩니다. 트랜잭션이 실패하면 catch 코드 세그먼트가 실행됩니다.
<?php try { $pdo->beginTransaction(); // 开启一个事务 $row = null; $row = $pdo->exec("xxx"); // 执行第一个 SQL if (!$row) throw new PDOException('提示信息或执行动作'); // 如出现异常提示信息或执行动作 $row = $pdo->exec("xxx"); // 执行第二个 SQL if (!$row) throw new PDOException('提示信息或执行动作'); $pdo->commit(); } catch (PDOException $e) { $pdo->rollback(); // 执行失败,事务回滚 exit($e->getMessage()); } ?>
트랜잭션 내 SQL 문에 오류가 발생하면 모든 SQL이 실행되지 않습니다. 모든 SQL 문이 올바른 경우에만 실행을 위해 제출됩니다.
더 많은 PHP 관련 콘텐츠에 관심이 있는 독자들은 이 사이트의 특별 주제인 "pdo 기반 PHP 데이터베이스 운영 기술 요약", "PHP 운영 요약 및 연산자 사용법" , "PHP 네트워크 프로그래밍 기술 요약", "기본 PHP 구문 소개 튜토리얼", "PHP 운영 Office 문서 기술 요약(포함) word, excel, access, ppt)》, "php 날짜 및 시간 사용 요약", "php 객체 지향 프로그래밍 입문 튜토리얼", "php string (문자열) 사용법 요약 ", "php mysql 데이터베이스 작업 입문 튜토리얼" 및 "php 일반 데이터베이스 작업 기술 요약"
이 기사가 PHP 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.