PDO::rollBack — ย้อนกลับธุรกรรม (PHP 5 >= 5.1.0, PECL pdo >= 0.1.0)
บูล PDO::rollBack ( โมฆะ )
ย้อนกลับธุรกรรมปัจจุบันที่เริ่มต้นโดย PDO::beginTransaction() หากไม่มีธุรกรรมใดทำงานอยู่ PDOException จะถูกส่งออกไป
หากฐานข้อมูลถูกตั้งค่าเป็นโหมดการส่งอัตโนมัติ ฟังก์ชัน (วิธีการ) นี้จะคืนค่าโหมดการส่งอัตโนมัติหลังจากย้อนกลับธุรกรรม
ฐานข้อมูลบางแห่ง รวมถึง MySQL จะทำให้เกิดการคอมมิตโดยนัยโดยอัตโนมัติเมื่อมีคำสั่ง DLL เช่น การลบหรือการสร้างตารางข้อมูลภายในธุรกรรม การดำเนินการโดยปริยายจะไม่สามารถย้อนกลับการเปลี่ยนแปลงใดๆ ภายในขอบเขตของธุรกรรมนี้ได้
ส่งคืน TRUE เมื่อสำเร็จ หรือ FALSE เมื่อล้มเหลว
ตัวอย่างต่อไปนี้เริ่มต้นธุรกรรมและออกคำสั่งสองคำสั่งที่แก้ไขฐานข้อมูลก่อนที่จะย้อนกลับการเปลี่ยนแปลง แต่ใน MySQL คำสั่ง DROP TABLE จะทำธุรกรรมโดยอัตโนมัติ ดังนั้นการเปลี่ยนแปลงใดๆ ภายในธุรกรรมนี้จะไม่ถูกย้อนกลับ
<?php/* เริ่มต้นการทำธุรกรรมและปิด auto-commit*/$dbh->beginTransaction();/* เปลี่ยนสคีมาฐานข้อมูลและข้อมูล*/$sth = $dbh->exec("DROP TABLE Fruit"); $sth = $dbh->exec("UPDATE dessert SET name = 'hamburger'");/* รับรู้ข้อผิดพลาดและย้อนกลับการเปลี่ยนแปลง*/$dbh->rollBack();/* ณ จุดนี้ การเชื่อมต่อฐานข้อมูลจะกลับสู่โหมดยืนยันอัตโนมัติ*/?>