>  기사  >  백엔드 개발  >  PHP_php 스킬에서 PDO의 트랜잭션 처리 분석

PHP_php 스킬에서 PDO의 트랜잭션 처리 분석

WBOY
WBOY원래의
2016-05-16 19:54:362106검색

이 글에서는 PHP에서 PDO의 트랜잭션 처리를 예제를 통해 분석합니다. 참고하실 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.

트랜잭션 처리에는 원자성, 일관성, 독립성, 내구성이라는 네 가지 특성이 있습니다.

모든 데이터베이스가 트랜잭션 처리를 지원하는 것은 아닙니다. PDO는 트랜잭션 처리를 수행할 수 있는 데이터베이스에 대해 트랜잭션 지원을 제공합니다.

트랜잭션 처리 구성 시 참고 사항:

1. PDO 자동 제출을 끄세요.

$pdo->setAttribute(PDO::ATTR_AUTOCOMMIT, false);

2. 거래 개시에 필요한 방법

$pdo->beginTransaction(); // 开启一个事务
$pdo->commit(); // 提交事务
$pdo->rollback(); // 回滚事务

3. 일반적인 트랜잭션 처리는 try...catch... 문에서 실행됩니다. 트랜잭션이 실패하면 catch 코드 세그먼트가 실행됩니다.

<&#63;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());
}
&#63;>

트랜잭션 내 SQL 문에 오류가 발생하면 모든 SQL이 실행되지 않습니다. 모든 SQL 문이 올바른 경우에만 실행을 위해 제출됩니다.

더 많은 PHP 관련 콘텐츠에 관심이 있는 독자들은 이 사이트의 특별 주제인 "pdo 기반 PHP 데이터베이스 운영 기술 요약", "PHP 운영 요약 및 연산자 사용법" , "PHP 네트워크 프로그래밍 기술 요약", "기본 PHP 구문 소개 튜토리얼", "PHP 운영 Office 문서 기술 요약(포함) word, excel, access, ppt)》, "php 날짜 및 시간 사용 요약", "php 객체 지향 프로그래밍 입문 튜토리얼", "php string (문자열) 사용법 요약 ", "php mysql 데이터베이스 작업 입문 튜토리얼" 및 "php 일반 데이터베이스 작업 기술 요약"

이 기사가 PHP 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.