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/* بدء معاملة وإيقاف الالتزام التلقائي*/$dbh->beginTransaction();/* تغيير مخطط قاعدة البيانات والبيانات*/$sth = $dbh->exec("DROP TABLE Fruit"); $sth = $dbh->exec("تحديث اسم مجموعة الحلوى = 'همبرغر'");/* التعرف على الأخطاء واستعادة التغييرات*/$dbh->rollBack();/* عند هذه النقطة يعود اتصال قاعدة البيانات إلى وضع الالتزام التلقائي*/?>